체제 | 환경설정 |
---|---|
OS | Redhat 9.5 |
DB | MySQL 8.4 |
[root@localhost ~]# cat /etc/redhat-release
Rocky Linux release 9.5 (Blue Onyx)
[root@localhost ~]# mysql --version
mysql Ver 8.4.4 for Linux on x86_64 (MySQL Community Server - GPL)
https://dev.mysql.com/downloads/repo/yum/
관련 setup package 선택 후, 빨간줄 다운로드
scp C:\Users\rosar\Downloads\mysql84-community-release-el9-1.noarch.rpm root@(ip주소):/root
# rpm -Uvh mysql84-community-release-el9-1.noarch.rpm
# dnf -y install https://dev.mysql.com/get/mysql84-community-release-el9-1.noarch.rpm
# rpm -qa | grep mysql
mysql84-community-release-el9-1.noarch
# dnf -y install mysql-server
# systemctl start mysqld
# systemctl status mysqld
mysql 안전모드 실행이 되지 않아서 아래와 같은 방법으로 해결
임시 비밀번호를 통해 접속
# grep 'root' /var/log/mysqld.log
2025-01-22T13:11:32.569985Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: prnpVM*xT99y
강화된 비밀번호만 설정할 수 있고 다른 명령어는 실행할 수 없는 상태
mysql> SHOW VARIABLES LIKE 'validate_password%';
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'StrongPassword123!';
Query OK, 0 rows affected (0.02 sec)
보안상의 문제로 선호하지 않음
mysql> SET GLOBAL validate_password.policy = 'LOW';
Query OK, 0 rows affected (0.00 sec)
mysql> SET GLOBAL validate_password.length = 0;
Query OK, 0 rows affected (0.00 sec)
mysql> SET GLOBAL validate_password.mixed_case_count = 0;
Query OK, 0 rows affected (0.00 sec)
mysql> SET GLOBAL validate_password.number_count = 0;
Query OK, 0 rows affected (0.00 sec)
mysql> SET GLOBAL validate_password.special_char_count = 0;
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like 'validate_password%';
+-------------------------------------------------+-------+
| Variable_name | Value |
+-------------------------------------------------+-------+
| validate_password.changed_characters_percentage | 0 |
| validate_password.check_user_name | ON |
| validate_password.dictionary_file | |
| validate_password.length | 4 |
| validate_password.mixed_case_count | 0 |
| validate_password.number_count | 0 |
| validate_password.policy | LOW |
| validate_password.special_char_count | 0 |
+-------------------------------------------------+-------+
8 rows in set (0.00 sec)
mysql> alter user 'root'@'localhost' identified by 'root@';
Query OK, 0 rows affected (0.01 sec)