起因
在docker 安装mysql 之后 发现 本地远程连接出现
2059 - authentication plugin 'caching_sha2_password
经过 csdn 众多呵呵的阻挠 中终于解决
原因
mysql 8.0 加密规则的问题 跟着下面操作 注意这个教程是 docket 容器下出现问题
解决
1、首先使用 docker ps 查看服务 找到mysql 服务
2、找到id docker exec -it dd77bc903a36 bash
dd77bc903a36 这里改成你的 mysql Id 进入容器
3、执行 mysql -u root -p root 是用户名
4、执行 SELECT Host, User, plugin from user; 查看加密规则
我这个是修改过的 root 原本规则是
caching_sha2_password
5、执行命令 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'admin'; admin是我的密码 接着执行 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin';
6、执行 FLUSH PRIVILEGES;
7、再次执行 SELECT Host, User, plugin from user; 查看加密规则 加密规则变成
mysql_native_password 则成功
再次使用 root 连接显示成功
特此记录错误 方便日后查看