今天使用Navicat連接mysql的時候報了2059的錯誤,為了解決這個看似不難的問題,我也是試了不少方法,在這裡給大家分享下我的經驗。 (推薦教學:navicat教學)
在用navicat連接MySQL8 時會出現2059錯誤,這是由於新版本的MySQL使用的是caching_sha2_password驗證方式,但此時的navicat還沒有支持這種驗證方式。
解決方法就是將驗證方式改為先前版本(5.7及以下)所使用的驗證方式mysql_native_password。
具體的驗證方式可以查看預設資料庫'mysql'中user表plugin欄位。
在命令列登入資料庫時不會出現2059錯誤,在命令列中登入資料庫,執行下面的命令。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
'root'可以改為你自己定義的用戶名,'localhost'指的是該用戶開放的IP,可以是'localhost'(僅本機訪問,相當於127.0.0.1),可以是具體的'...'(具體某一IP),也可以時'%'(所有IP均可訪問)。 'password'是你想使用的驗證密碼。
友情提示:一定要牢記更改後的密碼,不然忘了會很麻煩。
#以上是navicat連線MySQL報2059錯誤的詳細內容。更多資訊請關注PHP中文網其他相關文章!