查了资料,是因为mysql8之后的加密规则变化了,
mysql8之前是mysql_native_password,mysql8之后变成了caching_sha2_password。
现在我要把加密方式改回mysql_native_password。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码
FLUSH PRIVILEGES; #刷新权限
这个时候密码变成了password,不是原来设置的密码了。
再次链接navicat,成功!