安装MySQL8.0发现用navicat 连接不上MySQL了,大概原因是mysql的root用户的验证方式变了。可以从图下看出root的用户的加密方式为caching_sha2_passoword,而navicat连接所用的方式为native_password。mysql为远程连接和本地连接提供了不同的密码验证方式。
解决方案:知道原因之后解决就容易多了。
方式一:修改插件root插件验证方式:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'MyNewPass4!';
注意:先更改localhost为%
方式二:创建新用户,采用naviat_password 连接方式。赋予新用户root管理员的全部权限。
CREATE USER 'finley'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'finley'@'%' WITH GRANT OPTION;
三:刷新权限:
flush privileges;
参考资料:https://dev.mysql.com/doc/refman/8.0/en/adding-users.html