今天使用navicat链接mysql的时候报了2059的错误,找了很久才找到解决方法,这里记录一下。出现2059这个错误的原因是在mysql8之前的版本中加密规则为mysql_native_password,而在mysql8以后的加密规则为caching_sha2_password。通过网络查找发现我们可以将mysql用户登录的加密规则修改为mysql_native_password。下面说下具体步骤:

打开terminal(Mac为例)

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

输入mysql -uroot -p登陆mysql,如果提示commod not found,那我们需要先将mysql加入系统环境变量。
登陆成功后输入ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER修改加密规则
加密规则修改完成后我们可以通过ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'更新一下用户的密码
这样我们就可以顺利的去使用Navicat去链接Mysql了。
---------------------
作者:萌动小彩笔
来源:CSDN
原文:https://blog.csdn.net/zl_china/article/details/80154468
版权声明:本文为博主原创文章,转载请附上博文链接!

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄