[转载]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社区。