Navicat 连接mysql8.0出现2059错误
文章目录
1、出错的原因
mysql8之前的版本的用户登录密码的加密规则是mysql_native_password,而mysql8之后的加密规则是caching_sha2_password。
出现2059错误是因为你的navicat不支持mysql的用户密码加密规则,所以这里可以把加密规则还原为mysql_native_password。
2、解决方法(如图)
3、具体操作步骤
1、cmd窗口,登录mysql
mysql -uroot -proot123
(root123换成你对应的登录密码)
2、切换到mysql数据库
use mysql
3、查看root用户的密码加密规则
select user,plugin from user where user='root';
可以看到加密规则是caching_sha2_password
4、将加密规则更改为mysql_native_password
alter user'root'@'localhost' identified with mysql_native_password by 'root123';
(root123换成你的登录密码)
5、刷新权限
flush privileges;
6、重新查看root用户的密码加密规则
select user,plugin from user where user='root';
可以看到加密规则已经更改为mysql_native_password
7、打开navicat再连接下,连接成功了