Docker创建mysql成功,如下:
我们使用Navicat12连接mysql但是报错,报错请看,
我们最终解决办法,
在Docker容器中进入mysql控制台,
执行如下命令:
dockker exec -it mysql02 bash
mysql -uroot -p123456
然后执行如下命令既可以解决问题:
原来,MySql 8.0.11 换了新的身份验证插件(caching_sha2_password), 原来的身份验证插件为(mysql_native_password)。而客户端工具Navicat Premium12 中找不到新的身份验证插件(caching_sha2_password),对此,我们将mysql用户使用的 登录密码加密规则 还原成 mysql_native_password,即可登陆成功。
具体操作:
首先使用 MySql 数据库自带的命令行客户端工具登录数据库
use mysql
从数据库的user表中查询 mysql 用户原来使用的身份验证插件
select user,host,plugin,authentication_string from user;
将用户Xue使用的身份验证插件 替换为之前版本使用的 mysql_native_password ,修改成功后再次使用客户端工具 Navicat Premium12 ,如无其它意外 , 应该是可以正常连接登录了。
alter user 'root'@'%' identified with mysql_native_password by '123456';
参测试连接成功!