MySQL 连接出现 Authentication plugin ‘caching
作者:mmseoamin日期:2023-12-18

出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password. 

1. 升级MySQL版本

较早的MySQL版本可能不支持caching_sha2_password插件。尝试升级到较新的MySQL版本,以支持该插件。

2. 修改用户的身份验证插件:

如果无法升级MySQL版本,可以尝试修改用户的身份验证插件。可以使用以下命令修改用户的身份验证插件:

 

ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

 其中,'username'是要修改的用户名,'localhost'是要修改的主机名,'password'是用户的密码。

处理如下:

1、WIN+R进入cmd,登入mysql

MySQL 连接出现 Authentication plugin ‘caching,第1张

2、修改账户密码加密规则(改用户的身份验证插件)

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;   #修改加密规则 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';   #更新一下用户的密码 
FLUSH PRIVILEGES;   #刷新权限 

MySQL 连接出现 Authentication plugin ‘caching,第2张

3、测试连接

MySQL 连接出现 Authentication plugin ‘caching,第3张

3. 创建新用户:

如果无法修改用户的身份验证插件,可以尝试创建一个新用户并使用mysql_native_password插件进行身份验证。可以使用以下命令创建新用户:

CREATE USER 'new_username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

   然后,将权限授予新用户并使用新用户进行连接。

4. 修改MySQL配置文件:

在MySQL的配置文件中,可以将默认的身份验证插件设置为mysql_native_password。打开MySQL的配置文件(通常是my.cnf或my.ini),找到[mysqld]部分,并添加以下行:

default_authentication_plugin=mysql_native_password

   保存并重新启动MySQL服务。