问题
navicat 连接 mysql 时报错:1251-Client does not support authentication protocol requested by server
原因
因为mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password
此时用MySQL 8.0 Command Line Client 打开命令行,可以查询到加密规则
解决
1.修改密码和加密规则
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
注意:最后的一个'root'是重置后的新密码。可以将其改成自己的密码。
2.修改完再查询 可以看到加密规则已经调整过来了
现在用Navicat Premium再测试连接,已经可以正常连接上了。