最近使用了docker拉取了一个最新版的mysql,部署好之后,使用navicat连接,提示 Authentication plugin ‘caching_sha2_password’ cannot be loaded,如下图:
网上找了相关博客,发现解决办法都很雷同,但最终问题并没有解决;
常规办法是
1、先登录上mysql:mysql -u root -p ,之后输入密码,先连接上
2、修改用户加密方式
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘root密码’; #更新一下用户加密规则
3、权限刷新
FLUSH PRIVILEGES;
4、更新密码
alter user ‘root’@‘localhost’ identified by ‘root密码’’;
至此,通常情况下,navicat都可以连接成功了,但我却没有成功,依然提示同样的错误,以下为非常规解决办法:
1、登录mysql
mysql -uroot -p
2、创建用户-可远程方式登录
create user ‘test’@’%’ identified with mysql_native_password by ‘test密码’;
3、赋予管理员权限
grant all privileges on . to ‘test’@’%’;
4、使用navicat连接test用户
5、点击用户,修改root用户的插件一项,如下:
6、点击保存,重新使用root登录
至此,问题解决!