1、新安装的mysql8,使用破解版的navicat连接的时候一直报错,如图所示:

2、网上查找原因发现是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password. 由于用的是破解版的navicat,所以只能用第二种方法解决了;
3、打开mysql的命令行客户端,输入密码登录


4、然后在mysql中先更改加密方式,指令如下:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
5、然后再更改密码,由于加密规则更改,所以需要重新设置密码;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
6、最后在刷新一下数据库;
FLUSH PRIVILEGES;