SQLyog连接MySQL8 异常2059-Authentication plugin ‘cachi
短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
今数据库更新到8.0的版本后,使用DataGrip和workbench都可以链接数据库,但是使用Navicat,SQLyog连接不上数据库,提示上面错误,这就比较炸毛了...,百度查看了一圈的博文,试了很多方法都没解决,却遇到一个有意思的事情,查看一篇博主博文的时候,想试一下他的解决方案,刚好看见他的博文下面评论骂声一片,说博主害人不浅,哈哈,为了不让自己忘记,并且帮大家解决问题,话不多说附上教程:
原因分析:
其实是mysql8.0版更换了新的身份验证是(caching_sha2_password)之前身份验证是(mysql_native_password),Navicat,和SQLyog客户端软件其实是不支持新的身份验证,也就是说新的身份验证找不到(caching_sha2_password),既然知道了是这个问题,那么我们就把登录密码加密规则改回(mysql_native_password),就好啦~~
操作流程:
打开WindowsDOS命令行窗口就是命令提示符,以管理员身份运行【PS:使用的Windows命令提示符,你要把自己的MySQL的环境变量配置好】,当然你要是说我不用的Windows的命令行客户端,那也是没有任何问题的你可以使用MySQL的自带的命令行客户端!
1,登录MySQL,使用命令
mysql -u root -p或mysql -u root -ppassword【ps:-ppassword后面的密码是你的root密码】
2,修改加密规则
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘password‘ PASSWORD EXPIRE NEVER;
3,更新用户密码
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED WITH mysql_native_password BY ‘password‘;
4,刷新权限
FLUSH PRIVILEGES;
5,重置密码
原因分析:
其实是mysql8.0版更换了新的身份验证是(caching_sha2_password)之前身份验证是(mysql_native_password),Navicat,和SQLyog客户端软件其实是不支持新的身份验证,也就是说新的身份验证找不到(caching_sha2_password),既然知道了是这个问题,那么我们就把登录密码加密规则改回(mysql_native_password),就好啦
操作流程:
打开WindowsDOS命令行窗口就是命令提示符,以管理员身份运行【PS:使用的Windows命令提示符,你要把自己的MySQL的环境变量配置好】,当然你要是说我不用的Windows的命令行客户端,那也是没有任何问题的你可以使用MySQL的自带的命令行客户端!
1,登录MySQL,使用命令
mysql -u root -p或mysql -u root -ppassword【ps:-ppassword后面的密码是你的root密码】
2,修改加密规则
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘password‘ PASSWORD EXPIRE NEVER;
3,更新用户密码
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED WITH mysql_native_password BY ‘password‘;
4,刷新权限
FLUSH PRIVILEGES;
5,重置密码
alter user ‘root‘@‘localhost‘ identified by ‘你的密码‘;
博主尝试第二遍把密码改回原来的密码的时候,没有执行刷新权限命令也是可以的,如上图,接下来Navicat,SQLyog就可以使用
SQLyog连接MySQL8 异常2059-Authentication plugin ‘cachi
原文地址:https://blog.51cto.com/14861463/2510958
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341