[轉載]ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded; 的解決辦法
運行環境:centos7.4 +MySQL 8.0.11
關於這個問題,我是在MySQL安裝完成后,使用遠程進行登錄時遇到的問題,具體異常信息如下:
“ ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded; ”
可以看到MySQL8.0.11版本默認的認證方式是caching_sha2_password ,而在MySQL5.7版本則為mysql_native_password。
若想在MySQL8.0版本中繼續使用舊版本中的認證方式需要在my.cnf 文件中配置並重啟,因為此參數不可動態修改。
-
mysql> set global default_authentication_plugin='mysql_native_password';
-
ERROR 1238 (HY000): Variable 'default_authentication_plugin' is a read only variable
寫入my.cnf 文件后重啟MySQL:
-
vim my.cnf
-
[mysqld]
-
default_authentication_plugin=mysql_native_password
二如下圖:
解決辦法:
關於這個問題,看起來很難,實則很簡單,例如我需要在IP地址為192.168.78.138的主機上,遠程登錄到安裝好的MySQL數據庫服務,則需要在MySQL服務上添加一個IP為192.168.78.138的用戶即可,如下圖:
注意:如果你的也是最新版本,則需要在my.ini的[mysqld]下添加一行:
default_authentication_plugin = mysql_native_password
在重新初始化MySQL服務即可!!!
用戶添加完成后,現在就可以遠程進行登錄了,如下圖:
好了,關於 ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded; 就寫到這兒了,如果還有什么疑問或遇到什么問題歡迎掃碼提問,可以給我留言。
歇后語:“ 共同學習,共同進步 ”,也希望大家多多關注CSND的IT社區。