用Navicat连接MySQL出现Authentication plugin 'caching_sha2_password' cannot be loaded

刚安装好MySQL,有一个默认密码,比较复杂,我们可以先使用这个复杂密码登录,登录成功后使用命令[alter user ‘root’@‘localhost’ identified by ‘root’;]修改密码即可。
我这里修改后的密码是root,接着我想用Navicat登录,出现了如下问题。

问题
用Navicat连接MySQL出现Authentication plugin ‘caching_sha2_password’ cannot be loaded的问题

原因
出现这个问题的原因是由于Navicat和MySQL的版本问题,
mysql8 之前,加密规则是mysql_native_password;
mysql8 之后,加密规则是caching_sha2_password。
解决方法一种是升级Navicat驱动,一种是MySQL的加密规则。
我这里是将MySQL的加密规则改为mysql_native_password

解决方法
1、管理员运行cmd,登录MySQL

2、修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
我的password是root

3、更新用户的密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
我的password是root

4、刷新权限
FLUSH PRIVILEGES;

5、重置密码
alter user 'root'@'localhost' identified by 'root';

此时在使用Navicat连接MySQL就可以连接成功了!

posted on 2022-02-11 11:10  书梦一生  阅读(695)  评论(0编辑  收藏  举报

导航