[mysql-5.7.x 이상 버전에서 비번 변경 후 아래의 에러가 나올 때]
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
콘솔에서 mysqld_safe 실행으로 safe 모드로 MySQL 데몬을 구동하고 다른 콘솔 윈도우를 띄어 MySQL에 접속한다.
#/usr/local/mysql/bin/mysqld_safe & (mysql 구동)
#mysql -u root -p (mysql 접속)
접속 후 다음 명령어로 root 비밀번호를 업데이트한다.
[5.7 이전 버젼]
update mysql.user set password=password('비밀번호12345') where user='root';
FLUSH PRIVILEGES;
[5.7 이후 버젼]
update user set authentication_string=password(비밀번호12345) where user='root';
FLUSH PRIVILEGES;
(5.7 이후 버젼에는 password 필드가 존재하지 않는다.)
설정 후 MySQL 접속 후 명령을 실행하게 되면 다음과 같은 장애가 발생한다.
mysql> SELECT 1;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
위와 같은 오류가 발생하는 경우 다음과 같은 명령어를 실행한다.
mysql> SET PASSWORD = PASSWORD(비밀번호12345);
Query OK, 0 rows affected (0.01 sec)
mysql> SELECT 1;