用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出现Authentication plugin 'caching_sha2_password' cannot be loaded_第1张图片

原因

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

解决方法

1、管理员运行cmd,登录MySQL

用Navicat连接MySQL出现Authentication plugin 'caching_sha2_password' cannot be loaded_第2张图片

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就可以连接成功了!

你可能感兴趣的:(MySQL,MySQL,Navicat,password,加密规则,Authentication)