개요
예전 MySQL 3.x 버전에서는 source code를 컴파일하여 설치를 많이 했었다. 그러다 한동안 컴파일을 이용한 설치를 하지 않다가 최근 5.x버전 컴파일 과정에서 헤맨 경험이 있어 정리를 해보고자 한다.
설치 환경
MySQL : mysql-boost-5.7.26.tar.gz
OS : CentOS 7.6
설치
1. mysql 다운로드
mysql source code는 boost headers가 포함된 패키지와 미포함된 패키지가 있다. boost hearders가 미포함된 패키지는 boost를 다운받거나 OS에 포함된 rpm을 이용하여 설치 할수 있다.
다운로드 주소 : https://dev.mysql.com/downloads/mysql/ MySQL Community Server 버전
2. 사전 패키지 설치
ncursencurses-devel rpm 설치
3. mysql 컴파일
shell> tar zxvf mysql-boost-5.7.26.tar.gz
shell> cd mysql-5.7.26
shell> mkdir bld
shell> cd bld
shell> cmake .. -DWITH_BOOST=../boost/boost_1_59_0 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
** -DWITH_BOOST : boost headers 가 위치한 경로
** -DCMAKE_INSTALL_PREFIX : mysql 설치 경로
shell> make
shell> make install
4. mysql user 생성
shell> groupadd mysql
shell> ueradd -r -g mysql -s /bin/false mysql
5. mysql 디렉토리 소유자 변경
shell> cd /usr/local/mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
6. mysql database 생성 및 기동
shell> cd /usr/local/mysql/bin
shell> ./mysqld --initialize --user=mysql
** 실행하기전 /etc/my.cnf 있는지 확인, mariadb-libs rpm에 의해서 /etc/my.cnf /etc/my.cnf.d/ 존재함, /etc/my.cnf를 사용하지 않을 경우 이름을 변경하거나 설치 환경에 맞게 조정)
** 실행후 /usr/local/mysql/data 디렉토리에 데이타 생성됨
** ./mysqld --initialize --user=mysql 명령어 실행후 마지막 줄에 root 사용자의 임시 패스워드가 생성됨
shell> ./mysql_ssl_rsa_setup
기동 방법 1)
shell> ./mysqld_safe --user=mysql &
기동 방법 2)
shell> cp support-files/mysql.server /etc/init.d/mysql.server
shell> /etc/init.d/mysql.server start
7. mysql root 사용자 패스워드 변경
shell> mysql -p mysql
Enter password:
mysql> alter user root@'localhost' identified by 'passw0rd' ;
'DBMS > MySQL' 카테고리의 다른 글
[MySQL] mysqldump 백업 (0) | 2019.11.29 |
---|---|
[MySQL] 바이너리 로그 파일 (0) | 2019.11.28 |
[MySQL] InnoDB 파일 구조 (0) | 2019.11.28 |
[mysql] 기본 명령어 (0) | 2019.11.27 |
[MySQL] mysql connector-J 설치 (0) | 2019.09.20 |