[转载]ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded; 的解决办法

转载https://blog.csdn.net/ltstud/article/details/81188872

运行环境: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社区。

12-16 22:29