没有SQL提示 1251 -Client does not support authentication protocol requested by server; consider upgrading MySQL client
时间: 2023-07-21 21:41:26 浏览: 171
这个错误提示是由于 MySQL 8.0 默认采用了新的密码认证方式,而旧版本的 MySQL 客户端不支持这种新的密码认证方式所致。解决这个问题的方法有两种:
1. 使用 MySQL 8.0 以上版本的客户端连接 MySQL 8.0 服务器。这种方法最为简单,只需要使用新版本的 MySQL 客户端即可。
2. 修改 MySQL 8.0 服务器的密码认证方式,使其支持旧版本的客户端。具体步骤如下:
1. 停止 MySQL 服务。
2. 修改 MySQL 配置文件 my.cnf,在 [mysqld] 段中添加如下一行:
```
default_authentication_plugin=mysql_native_password
```
3. 启动 MySQL 服务。
4. 使用 MySQL 客户端连接 MySQL 服务器,修改用户的密码认证方式。例如,将用户 root 的密码认证方式修改为 mysql_native_password,可以执行如下命令:
```
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
```
5. 重新启用 MySQL 8.0 的密码认证方式,可以执行如下命令:
```
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'password';
```
这样,就可以使用旧版本的 MySQL 客户端连接 MySQL 8.0 服务器了。但是需要注意的是,修改 MySQL 8.0 的密码认证方式可能会影响已有的应用程序,因此在修改之前需要谨慎评估风险。
阅读全文