之前自己玩Docker的时候,运行最新版的Mysql镜像
docker run -d --restart=always --name mysql -e MYSQL_ROOT_PASSWORD=centos -v /home/mysql/data:/var/lib/mysql -v /home/mysql/my.cnf:/etc/mysql/my.cnf -p 3306:3306 mysql:latest
但是在本地使用Navicat连接时出现以下问题:
2059 - Authentication plugin ‘caching_sha2_password’ cannot be loaded:
查询之后是因为身份验证插件的更换问题。
解决如下:
1.登录Mysql
docker exec -it 505755b2e5fc mysql -uroot -p'centos'

2.选择数据库mysql,查看当前的身份认证插件。在此我已经修改为
mysql_native_password
select user,host,plugin,authentication_string from user;

3.修改身份验证插件
alter user 'root'@'%' identified with mysql_native_password by 'centos';

4.重新测试是否能够连接成功

本文介绍如何在Docker中部署最新版Mysql并解决Navicat连接失败的问题,通过修改身份验证插件为mysql_native_password,实现成功连接。
837

被折叠的 条评论
为什么被折叠?



