現象
安裝了mysql-installer-community-8.0.19.0,然後又安裝了Navicat for MySQL_11.2.15,打開Navicat準備鏈接數據庫的時候出現瞭如下提示:
1251- Client does not support authentication protocol
原因
網上說出現這種情況的原因是:mysql8 之前的版本中加密規則是mysql_native_password,而在mysql8之後,加密規則是caching_sha2_password,
解決問題方法有兩種:
- 升級navicat驅動;
- 把mysql用戶登錄密碼加密規則還原成mysql_native_password.
解決步驟
1.打開CMD,進入MySQL的bin目錄,然後輸入mysql -u root -p,輸入密碼
2、更新密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密規則 (這行我沒有寫,不過貌似也可以)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用戶的密碼
FLUSH PRIVILEGES; #刷新權限
3、打開Navicat 更新密碼 重新連接即可
參考連接:https://blog.csdn.net/seventopalsy/article/details/80195246