记录-Navicat连接MySQL8.0出现2059错误
原因
原因是在mysql8之前的版本中加密规则为mysql_native_password. 而mysql8之后的加密规则为caching_sha2_password.
解决方案
解决此问题有两种方法:
- 一种是更新navicat驱动来解决此问题,
- 一种是将mysql用户登录的加密规则修改为mysql_native_password。
这里采用第二种方式。
解决过程
首先通过命令行连接MySQL
执行命令修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新用户的密码
FLUSH PRIVILEGES; #刷新权限
再次使用Navicat连接就可以
参考文章: https://blog.csdn.net/qq_29932025/article/details/80045716