Navicat ,SQLyog连接MySQL8 异常2059-Authentication plugin 'caching_sha2_password' cannot be loaded解决方案

 

        今数据库更新到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,重置密码

                  

alter user 'root'@'localhost' identified by '你的密码';

Navicat ,SQLyog连接MySQL8 异常2059-Authentication plugin 'caching_sha2_password' cannot be loaded解决方案_第1张图片

博主尝试第二遍把密码改回原来的密码的时候,没有执行刷新权限命令也是可以的,如上图,接下来Navicat,SQLyog就可以使用

 

 

 

你可能感兴趣的:(MySQL,开发工具)