navicat連接mysql時報2059錯誤解決方法
報錯原因
這個錯誤出現的原因是在mysql8之前的版本中加密規則爲mysql_native_password,而在mysql8以後的加密規則爲caching_sha2_password
解決方案
解決此問題有兩種方法,一種是更新navicat驅動來解決此問題,一種是將mysql用戶登錄的加密規則修改爲mysql_native_password。;根據網上大部分建議採取了第二種方式:
1、管理員權限打開cmd
輸入mysql -u root -p進入輸入密碼後進入mysql數據庫;
mysql -u root -p #進入數據庫
2、修改加密規則及密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的mysql密碼' PASSWORD EXPIRE NEVER; #修改加密規則
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的mysql密碼'; #修改密碼
FLUSH PRIVILEGES; #刷新數據
此處報錯:
//執行
ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
//報錯
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
錯誤1819 (HY000):您的密碼不滿足當前策略要求
改爲較複雜的密碼
ALTER USER 'root'@'%' IDENTIFIED BY 'rt123RT!@#' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'rt123RT!@#';
FLUSH PRIVILEGES; #刷新數據
3、退出,重啓mysql
service mysqld restart
重新連接mysql,輸入對應的賬號密碼