본문 바로가기

Linux/DB

centos7 mysql 8.0.11 컴파일 설치

설치 전 update를 하지 않았다면 update 진행 

# yum update -y 

 

 

필수 설치 데몬들 

# yum -y install openssl openssl-devel mhash mhash-devel libtool libtool-ltdl libtool-ltdl-devel imap-devel imap freetype-devel freetype libpng-devel libpng libjpeg-devel libjpeg libtiff-devel libtiff gd-devel gd pcre-devel pcre libxml-devel libxml libxml2-devel libxml2 gdbm-devel gdbm ncurses-devel ncurses curl-devel curl expat-devel expat bzip2-devel bzip2-libs bzip2 libc libc-devel libc-client-devel gcc* vim wget bzip2 cmake ncurses-devel bison

 

 

계정 추가

# groupadd -g 400 mysql
# useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql

 

 

 

 

mysql 설치 전 필수 설치 요소

 

[boost 1.66 버전 설치] 

mysql 8버전부터는 boost 1.6 이상의 버전을 설치해야합니다. 

 

# cd /usr/local/src

# wget https://sourceforge.net/projects/boost/files/boost/1.66.0/boost_1_66_0.tar.gz

 

Download Boost C++ Libraries from SourceForge.net

Manage your IT operations | Monday.com monday.com's IT software streamlines, simplifies, and improves the services your team delivers.

sourceforge.net

# tar xvfz boost_1_66_0.tar.gz 

# cd boost_1_66_0

# ./bootstrap.sh

# ./b2 install

 

 

 

 

mysql 8.0.11 설치 

 

# cd /usr/local/src

# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11.tar.gz

# tar xvfz mysql-8.0.11.tar.gz

# cd mysql-8.0.11

 

 

cmake 옵션 

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DMYSQL_TCP_PORT=3306 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/include/boost -DWITH_READLINE=1

 

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DWITH_SSL=system -DMYSQL_TCP_PORT=3306 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/src/boost_1_66_0

 

 

cmake가 성공하였다면

# make && make install 

 

 

설치 완료 후 기본 mysql 경로와 data 디렉토리 초기화 

# /usr/local/mysql/bin/mysqld --initialize-insecure --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql

 

 

mysql 경로에 권한 부여 

# chown -R mysql.mysql /usr/local/mysql/
# chmod 711 /usr/local/mysql
# chmod 700 /usr/local/mysql/data
# chmod 751 /usr/local/mysql/bin/
# chmod 750 /usr/local/mysql/bin/*
# chmod 755 /usr/local/mysql/bin/mysql
# chmod 755 /usr/local/mysql/bin/mysqldump

 

 

mysql 실행파일 만들기 및 권한 부여 

# cp -arp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# chmod 700 /etc/init.d/mysqld

 

 

mysql 설정파일 아래와 같이 수정

# vi /etc/my.cnf

[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
port=3306

[mysqld_safe]
log-error=/var/log/mysql_log.err
pid-file=/usr/local/mysql/mysql.pid

 

 

환경변수 추가 

# vi /root/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin

 

 

만약 사용하는 방화벽이 있다면 3306 포트를 오픈해준다. 

 

 

설치 후 최초 mysql 접속했을때 

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 

위와 같은 오류 발생 시 
mysql> alter user 'root'@'localhost' identified by 'password12!@';
해당 명령어로 root 패스워드 변경 후 재접속