今天在阿里云租了一个服务器,当我用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默认身份验证插件。
-
升级SQLyog
第一种就不用说了,SQLyog-13.1.6-0.x64是默认支持mysql8.0以上身份验证,把低版本的sqlyog升级到13.1.6就可以解决。 -
修改身份验证插件
首先登录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;文章来源:https://www.toymoban.com/news/detail-466286.html
重置密码(非必须)
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.’;
文章来源地址https://www.toymoban.com/news/detail-466286.html
到了这里,关于远程连接MySQL错误“plugin caching_sha2_password could not be loaded”的解决办法sql连接乱码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!