SQLyog13.1.1連線MySQL 8.0.19時出現的2058錯誤,加密方式因版本支援問題解決方法。
阿新 • • 發佈:2020-07-30
出現這種錯誤是mysql8以後的新版本修改了新的加密方法,加密方法為:
caching_sha2_password
而舊版本的mysql加密方法為:
mysql_native_password
解決方法有三種方案
方案一
更換最新的SQLyog 工具,新的SQLyog 13.1.5 就啟用了新的加密方法,就沒有此類的問題出現。
方案二
在新的 mysql 8.0.19 登入,建立一個新賬號,採用舊的加密方法,再授權超級管理員,使用此管理員登入也可以使用。程式碼如下:
mysql> create user admin identified with mysql_native_password by 'admin';Query OK, 0 rows affected (0.35 sec) mysql> grant all on *.* to admin; Query OK, 0 rows affected (0.18 sec) mysql> flush privileges; Query OK, 0 rows affected (0.09 sec)
方案三
直接修改當前root的加密方法為舊的加密方法, 以後也可以通過此方法修改回來。
mysql> alter user 'root'@'localhost' identified with mysql_native_password by '';Query OK, 0 rows affected (0.18 sec) mysql> flush privileges; Query OK, 0 rows affected (0.04 sec)
修改新的加密方法
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '';