다음은 mysql 버전 8.0 이상에서 user 비밀번호를 변경하는 방법이다.
단순 비밀번호 변경 시 바로 4번부터 진행하면 된다.
mysql.server stop
/usr/local/opt/mysql/bin/mysqld_safe --skip-grant-tables &
새 터미널을 열어준 뒤 다음 명령어를 입력한다.
# 터미널
mysql -u root
# mysql 콘솔
use mysql;
UPDATE User SET authentication_string=null WHERE User='root';
exit;
2번의 터미널은 종료하고 다음 명령어를 입력한다.
# 단순 비밀번호 변경 시에는 뒤에 p옵션을 붙인다!
mysql -u root
# mysql 콘솔
ALTER User 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '새 비밀번호';
flush privileges;
암호화된 비밀번호가 db에 저장되어야 정상적으로 동작한다.