본 문서는 RHEL/Rocky 8 버전에 MySQL 9 버전을 Zip 파일로 설치하는 과정을 설명한다.
Unix/Linux 시스템에서 압축된 tar.xz 바이너리를 사용해 MySQL 9.5 설치
파일명 예 : mysql-9.5.0-linux-glibc2.28-x86_64.tar.xz
MySQL 완전 제거 필수Yum/APT 등으로 설치한 경우 반드시 제거/etc/my.cnf, /etc/mysql/, 데이터 디렉터리도 삭제libaio 라이브러리 설치
# CentOS/RHEL yum install libaio # Ubuntu/Debian apt-get install libaio1
Oracle Linux 8 / RHEL 8 의 경우 libtinfo.so.5 누락 → 아래 패키지 설치 필요
yum install ncurses-compat-libs
아래 순서대로 진행한다.
/usr/local/mysql# 1. mysql 전용 사용자/그룹 생성 groupadd mysql useradd -r -g mysql -s /bin/false mysql # 2. 설치 디렉터리로 이동 cd /usr/local # 3. tar.xz 압축 해제 tar xvf /path/to/mysql-9.5.0-linux-glibc2.28-x86_64.tar.xz # 4. 심볼릭 링크 생성 (편의용) ln -s mysql-9.5.0-linux-glibc2.28-x86_64 mysql cd mysql # 5. secure_file_priv용 디렉터리 생성 mkdir mysql-files chown mysql:mysql mysql-files chmod 750 mysql-files # 6. 데이터 디렉터리 초기화 (임시 root 비밀번호 생성됨) bin/mysqld --initialize --user=mysql # → /var/log/mysqld.log 또는 에러로그에 임시 비밀번호 기록 # 7. 서버 기동 bin/mysqld_safe --user=mysql & # 또는 systemd 사용 시 별도 unit 파일 생성 # 8. (선택) 시스템 부팅 시 자동 기동 설정 cp support-files/mysql.server /etc/init.d/mysql.server chkconfig --add mysql.server # CentOS 6 이하 # CentOS 7+ 는 systemd unit 파일 직접 작성 권장
참조링크 : https://dev.mysql.com/doc/refman/9.5/en/using-systemd.html
RHEL7 이후버전에서 systemd 로 등록하려면 아래 서비스 파일을 생성하도록 한다.
cat << 'EOF' > /etc/systemd/system/mysqld.service [Unit] Description=MySQL Server (Generic Binary) Documentation=https://dev.mysql.com/doc/refman/9.5/en/ After=network.target [Service] Type=forking User=mysql Group=mysql ExecStart=/etc/init.d/mysql start ExecStop=/etc/init.d/mysql stop ExecReload=/etc/init.d/mysql restart PIDFile=/usr/local/mysql/data/$(hostname).pid Restart=on-failure RestartSec=5 LimitNOFILE=65535 LimitMEMLOCK=infinity # secure_file_priv 설정 (필요시) Environment="MYSQLD_OPTS=--secure-file-priv=/usr/local/mysql/mysql-files" [Install] WantedBy=multi-user.target EOF