설치 전 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 패스워드 변경 후 재접속
'Linux > DB' 카테고리의 다른 글
PostgreSQL-13 설치/설정 및 사용법 (0) | 2023.02.07 |
---|---|
CentOS7 Mariadb yum 설치 (0) | 2023.01.16 |
[mysql error] mysqldump: Error 2020: Got packet bigger than ‘max_allowed_packet’ bytes when dumping table 오류 해결 (0) | 2023.01.05 |
자주 사용하는 mysqldump 옵션 정리 (0) | 2023.01.05 |
mysql procedure 이용하여 dummy data 생성 스크립트 (0) | 2022.12.02 |