很多用戶在使用Navicat Premium 12連接MySQL數據庫時會出現Authentication plugin 'caching_sha2_password' cannot be loaded的錯誤。
出現這個原因是mysql8 之前的版本中加密規則是mysql_native_password,而在mysql8之后,加密規則是caching_sha2_password, 解決問題方法有兩種,一種是升級navicat驅動,一種是把mysql用戶登錄密碼加密規則還原成mysql_native_password.
這里用第二種方式 ,解決方法如下
1. 管理員權限運行命令提示符,登陸MySQL(記得添加環境變量)
mysql -u root -p
password: #登入mysql
2. 修改賬戶密碼加密規則並更新用戶密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密規則
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用戶的密碼
3. 刷新權限並重置密碼
FLUSH PRIVILEGES; #刷新權限
上面兩步對應的截圖
單獨重置密碼命令:alter user 'root'@'localhost' identified by '111111';
現在再次打開Navicat Premium 12連接MySQL問題數據庫就會發現可以連接成功了
參考:
https://blog.csdn.net/u011182575/article/details/80821418
https://blog.csdn.net/huangyuehong914/article/details/80503195