navicat连接MySQL8+时出现2059错误解决方法

在用navicat连接MySQL8+时会出现2059错误,这是由于新版本的MySQL使用的是caching_sha2_password验证方式,但此时的navicat还没有支持这种验证方式。
解决方法就是将验证方式改为以前版本(5.7及以下)使用的验证方式mysql_native_password。具体的验证方式可以查看默认数据库mysql中user表plugin字段。
在命令行中登录数据库时不会出现2059错误,在命令行中登录数据库,执行下面的命令

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
root可以改为你自己定义的用户名
localhost指的是该用户开放的IP,可以是localhost(仅本机访问,相当于127.0.0.1),可以是具体的*.*.*.*(具体某一IP),也可以时%(所有IP均可访问)。
password是你想使用的验证密码。

posted @ 2022-04-02 20:23  MrFlySand-飞沙  阅读(301)  评论(0编辑  收藏  举报