0%

MySQL连接问题:Client does not support authentication protocol requested by server; consider upgrading MySQL client

  1. 加密方式修改
  2. 连接配置修改

Navicat或MySQL.js连接时可能会遇到如下问题:

'Client does not support authentication protocol requested by server; consider upgrading MySQL client'

这是由于连接时,使用账号密码的方式连接,与MySQL的用户表的安全策略冲突,提示没有权限进行连接,解决的方案有两个:

  1. 修改MySQL加密方式,允许直接通过账号密码连接;
  2. 修改连接配置,适配数据库的安全连接形式;

加密方式修改

MySQL 8.x创建用户时默认使用的加密方式是:caching_sha2_password,该加密方式记录在user表的plugin字段中

使用原始密码字符串的plugin是mysql_native_password,修改的语句如下所示:

1
2
3
use mysql;
alter user 'username'@'192.168.0.100' identified with mysql_native_password by 'password';
flush privileges;

连接配置修改

无论是MySQL.js还是Navicat,目前都没有比较好的解决方式。(2021.9.15)