1. MySQL Yum Repository 다운로드 및 설치
CentOS 7에는 기본적으로 MariaDB가 포함되어 있지만, MySQL을 직접 설치하면 자동으로 대체됩니다. 먼저 MySQL 공식 Yum Repository 패키지를 다운로드합니다.
[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
다운로드가 완료되면 Yum을 이용해 Repository를 설치합니다.
[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
이제 MySQL 서버 패키지를 설치합니다.
[root@localhost ~]# yum -y install mysql-community-server
설치 과정에서 시간이 소요될 수 있으며, 완료되면 기존 MariaDB는 자동으로 대체됩니다.
2. MySQL 초기 설정
설치 후 MySQL 서비스를 시작합니다.
[root@localhost ~]# systemctl start mysqld.service
서비스 상태를 확인합니다.
[root@localhost ~]# systemctl status mysqld.service
MySQL이 정상적으로 실행되면 임시 루트 비밀번호를 로그에서 확인합니다.
[root@localhost ~]# grep "password" /var/log/mysqld.log
확인한 비밀번호로 MySQL에 접속합니다.
[root@localhost ~]# mysql -uroot -p
초기 접속 후에는 반드시 비밀번호를 변경해야 명령어를 실행할 수 있습니다.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
비밀번호가 너무 단순하면 정책 위반 오류가 발생합니다. MySQL의 비밀번호 규칙은 validate_password_policy 변수에 의해 결정되며, 다음과 같이 확인할 수 있습니다.
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 4 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+--------------------------------------+-------+
7 rows in set (0.01 sec)
기본적으로 validate_password_length는 8이며, 다음 공식으로 계산됩니다.
validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
정책을 완화하려면 다음 명령어를 실행합니다.
mysql> SET GLOBAL validate_password_policy=0;
mysql> SET GLOBAL validate_password_length=1;
이제 간단한 비밀번호(예: 1234)도 설정 가능합니다.
3. Yum Repository 제거
Yum Repository가 남아 있으면 업데이트 시 자동으로 MySQL이 갱신될 수 있으므로, 필요에 따라 제거합니다.
[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch
원격 접속이 필요하다면 방화벽에서 3306 포트를 열어야 합니다.