报错原因:
MySQL 8.0 之前的版本中,加密规则是“mysql_native_password”,而在MySQL 8.0 之后,加密规则是“caching_sha2_password”。解决方法:
o. 升级navicat驱动;
o. 把MySQL用户登录密码加密规则还原成“mysql_native_password”
#修改加密规则
mysql> ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER;
#更新用户密码
mysql> ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;
#刷新权限
mysql> FLUSH PRIVILEGES;
其中:
root:指的是自己定义的用户名;
localhost:指的是用户开放的IP。可以是“localhost”(仅本机访问,相当于127.0.0.1),可以是具体的IP,也可以是“%”(所有IP均可访问);
password:指的是想设置的用户密码。
参考:/qq_36068954/article/details/80175755