问题:
使用Navicat12链接mysql8.0时,账号密码正确但是无法连接,报以下错误
原因: mysql8 之前的版本中加密规则是 mysql_native_password,而在 mysql8 之后,加密规则是caching_sha2_password。由于加密规则的不同导致无法正常链接
解决方法:
1.升级Navicat版本(自测Navicat15可以解决问题)
2.修改录密码加密规则还原mysql_native_password
方法:
以管理员身份运行 cmd,然后使用命令进入 mysql
mysql -u root -p
然后输入安装 mysql 时设置的 root 密码即可进入。
在mysql中先更改加密方式,指令如下:
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE
NEVER;
然后再更改密码,由于加密规则更改,所以需要重新设置密码;
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY
‘新密码’;
最后在刷新一下数据库,如果不行的话重启下mysql服务
FLUSH PRIVILEGES;
问题解决