远程连接MySQL错误“plugin caching_sha2_password could not be loaded”的解决办法
2021/6/27 19:22:49
本文主要是介绍远程连接MySQL错误“plugin caching_sha2_password could not be loaded”的解决办法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
远程连接MySQL错误“plugin caching_sha2_password could not be loaded”的解决办法
问题描述:
今天在阿里云租了一个服务器,当我用sqlyog远程连接mysql时,报了plugin caching_sha2_password could not be loaded错,即无法加载插件缓存sha2密码,但是我在cmd窗口就可以访问,在网上找了很多解决方法都没有解决,最后找到了原因。在MySQL 8.0中,caching_sha2_password是默认的身份验证插件,而不是mysql_native_password,服务器可以正常连接,本地cmd窗口 mysql -hxx.xx.xx.xx -P3306 -uroot -pRoot123. 可以正常连接,所以是我的sqlyog版本太旧了。
解决办法:
网上有两种解决办法,一种就是升级sqlyog,一种是修改mysql默认身份验证插件。
1. 升级SQLyog
第一种就不用说了,SQLyog-13.1.6-0.x64是默认支持mysql8.0以上身份验证,把低版本的sqlyog升级到13.1.6就可以解决。
2. 修改身份验证插件
首先登录mysql
mysql -hlocalhost -uroot -pRoot123.
这里跟很多博主都是一样的操作,但是这方法只能解决本地的连接问题,远程连接还是有问题。下面的123456是自己的密码
# 修改加密规则(非必须) ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root123.' PASSWORD EXPIRE NEVER; # 更新用户的密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Root123.'; # 刷新权限 FLUSH PRIVILEGES; # 重置密码(==非必须==) ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root123.';
如果你需要使用远程登录,将localhost 改为%就可以解决远程连接的问题。
# 修改加密规则(非必须) ALTER USER 'root'@'%' IDENTIFIED BY 'Root123.' PASSWORD EXPIRE NEVER; # 更新用户的密码 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Root123.'; # 刷新权限 FLUSH PRIVILEGES; # 重置密码(==非必须==) ALTER USER 'root'@'%' IDENTIFIED BY 'Root123.';
至此本地和远程root用户密码策略修改完毕,如果想修改其他的用户,仿照上面命令设置即可。
这篇关于远程连接MySQL错误“plugin caching_sha2_password could not be loaded”的解决办法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-20部署MySQL集群入门:新手必读指南
- 2024-11-20部署MySQL集群教程:初学者指南
- 2024-11-20部署MySQL集群项目实战:新手教程
- 2024-11-20部署MySQL集群资料:新手入门教程
- 2024-11-20MySQL集群部署教程:入门级详解
- 2024-11-20MySQL集群教程:入门与实践指南
- 2024-11-20部署MySQL集群教程:新手入门指南
- 2024-11-20MySQL读写分离教程:轻松入门
- 2024-11-20部署MySQL集群入门:一步一步搭建你的数据库集群
- 2024-11-19部署MySQL集群学习:入门教程