1. 程式人生 > >ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded; 的解決辦法

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 檔案中配置並重啟,因為此引數不可動態修改。

 
  1. mysql> set global default_authentication_plugin='mysql_native_password';

  2. ERROR 1238 (HY000): Variable 'default_authentication_plugin' is a read only variable

寫入my.cnf 檔案後重啟MySQL:

  1. vim my.cnf

  2. [mysqld]

  3. 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社群。