Centos 6.7에 MySQL 5.5.27 버전 소스 설치 방법

Apr 4, 2017

Centos 6.7에서 MySQL 5.5.27 버전 소스로부터 설치하는 과정을 기록했다.

우선 MySQL Community Server (Archived Versions) 페이지에서 5.5.27 파일을 내려받고, 설치하려는 서버에 올린다.

필요한 패키지 설치하기:

yum install -y cmake ncurses-devel

사전 작업:

# 사용자, 그룹 추가
groupadd mysql
useradd -r -g mysql -s /bin/false mysql

MySQL 빌드, 설치하기:

이미 다른 버전의 MySQL이 있는 상태라서 경로를 따로 지정해서 설치했다.

# 압축 풀고 빌드 디렉터리 생성
tar xvzf mysql-5.5.27
cd mysql-5.5.27
mkdir bld
cd bld
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.27 ..
make
make install

설치 후 작업:

# 설치된 디렉터리로 이동
cd /usr/local/mysql-5.5.27

# 권한 조정
chown -R mysql .
chgrp -R mysql .

# 설정 디렉터리 생성, 파일 복사
mkdir etc
cp ./support-files/my-medium.cnf  ./etc/my.cnf

# 데이터 초기화
scripts/mysql_install_db  --user=mysql --basedir=. --datadir=./data

설정 파일 수정:

vi etc/my.cnf

my.cnf:

이미 MySQL이 설치되어 있어서 포트를 33067로 지정했다.

socket = /usr/local/mysql-5.5.27/tmp/mysql.sock
port = 33067
datadir=/usr/local/mysql-5.5.27/data

MySQL 데몬 실행:

이렇게 시작할 수도 있고, 뒤에서 다루는 서비스 스크립트로 만들 수도 있다.

./bin/mysqld_safe --defaults-file=./etc/my.cnf

루트 비밀번호 지정:

./bin/mysqladmin -u root -P 33067 password 'new password'

서비스 스크립트 수정:

# mysql.server 파일 init.d 디렉터리로 복사 후 수정
cp ./support-files/mysql.server  /etc/init.d/mysqld5527
vi /etc/init.d/mysqld5527

기본 서비스 스크립트 파일은 디렉터리 설정이 약간 달라서 수정이 필요하다. 다음 네 부분을 찾아서 수정한다. (앞 단어로 검색, basedir, datadir, lock_file_path, mysqld_safe)

basedir=/usr/local/mysql-5.5.27

datadir=/usr/local/mysql-5.5.27/data

lock_file_path="$lockdir/mysql5527"

$bindir/mysqld_safe  --defaults-file="$basedir/etc/my.cnf" --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &

데몬을 시작한다.

service mysqld5527 start

이제 33067 포트를 사용해서 MySQL을 사용할 수 있다.

See Also