SQLyog连接MySQL8.x报错Plugin sha256_password could not be loaded

我在本地电脑安装的MySQL版本是5.7.x的, 平时用SQLyog连接一切正常, 今天需要用SQLyog连接云服务器上的MySQL就报错Plugin sha256_password could not be loaded:
在这里插入图片描述
这个错误出现的原因是从MySQL8.x版本开始, 身份验证插件改为了caching_sha2_password, 而之前的版本为mysql_native_password. 我们现在用的很多MySQL客户端暂时还不支持新的身份验证插件. 对了, IDEA是支持的, 所以用IDEA连接MySQL 8.x数据库没有这个问题.

官方博客有介绍这个新的身份验证插件: MySQL官方博客

解决办法:
登录远程云服务器, 登入mysql的root账号, 然后查询:

SELECT user, host, plugin from mysql.user;

在这里插入图片描述
默认的验证器插件为 caching_sha2_password, 改回mysql_native_password即可:

alter user 'username'@'localhost' identified with mysql_native_password by '123456';
alter user 'username'@'%' identified with mysql_native_password by '123456';

username 处填你的用户名称, @后面跟localhost 还是 %, 按你实际的来填, 最后面的是密码.

修改完毕后刷新一下:

FLUSH PRIVILEGES;

看看是否生效:

SELECT User, Host, plugin from mysql.user;

在这里插入图片描述

再回到SQLyog就可以正常登陆.

其实最正确的做法应该是找支持MySQL8.x的客户端,这样更安全.

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值