navicat連接mysql報錯2059,如下圖所示:
網路查詢過後,發現這個錯誤出現的原因是在mysql8之前的版本中加密規則為mysql_native_password,而在mysql8以後的加密規則為caching_sha2_password。
解決此問題有兩種方法,一種是更新navicat驅動程式來解決此問題,一種是將mysql用戶登入的加密規則修改為mysql_native_password。
相關推薦:《Navicat for mysql使用圖文教學》
根據網路上大部分建議採取了第二種方式:
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; #刷新数据
正常情況下繼續使用navicat連接mysql即可成功,但是,本人卻死在了第一步,無法進入數據庫;
我不知道有沒有和我一樣的小伙伴遇到這種情況,但不要慌,cmd不讓進,我們可以直接用mysql client登入呀;
#輸入密碼,進入mysql,輸入第二點中的指令即可解決。
以上是navicat連接mysql報錯2059如何解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!