1.环境说明
宿主机:win10
docker:Version 18.06.1-ce-win73 (19507)
mysql:8.x(docker store中最新版)
2.报错描述
使用navicat连接工具,连接报错如下:
3.报错原因说明
由于新版本的MySQL新特性导致的,通过查询mysql
mysql> select Host,User,plugin from mysql.user;
查询结果
±----------±-----------------±----------------------+
| Host | User | plugin |
±----------±-----------------±----------------------+
| % | root | caching_sha2_password |
| % | vuluser | caching_sha2_password |
查询结果如上,在老版本里,一般使用加密方式为mysql_native_password,因为认证方式改变导致的。
4.修改方案
修改加密方式为老版本加密方式。
5.修改
5.1 查看docker容器ID
docker ps -a
5.2 docker exec :在运行的容器中执行命令
docker exec -it 236b2624632d bash
5.3 连接mysql
mysql -u root -p
5.4 修改加密方式
执行命令,将用户的加密方式改为mysql_native_password,密码为root。
alter user ‘root’@’%’ identified with mysql_native_password by ‘root’;
5.5 执行命令flush privileges使权限配置项立即生效
作者:少侠灬
来源:CSDN
原文:https://blog.csdn.net/u013274055/article/details/83794340
版权声明:本文为博主原创文章,转载请附上博文链接!