最近我在安裝MySQL 8.0.13時遇到了一個問題:初始密碼無法使用。當我嘗試使用虛擬機安裝時,我按照常規步驟安裝完畢后,使用以下命令嘗試登錄MySQL:
mysql -u root -p
但是當我使用系統生成的初始密碼時,它提示我密碼不正確。我嘗試了許多不同的方式,但都沒有成功。
經過一番搜索,我找到了解決辦法。原因是我的MySQL版本(8.0.13)使用了新的加密方式。這種方式使用了sha256_password,而不是之前的mysql_native_password。
幸運的是,解決辦法其實很簡單。您只需要經過以下步驟即可:
- 停止MySQL服務器:sudo systemctl stop mysql
- 使用以下命令啟動MySQL,并跳過授權表:sudo mysqld_safe --skip-grant-tables &
- 連接到MySQL:mysql -u root
- 在空密碼下更改到舊密碼:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '您的新密碼';
- 刷新權限:FLUSH PRIVILEGES;
- 退出MySQL并重新啟動:quit,sudo systemctl start mysql
現在,當您使用新密碼登錄時,您應該能夠成功連接到MySQL。