mysql 8.0 出现 2059 - authentication plugin 'caching_sha2_password

1,574 阅读1分钟

起因

在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; 查看加密规则

图片.png 我这个是修改过的 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 连接显示成功

图片.png

特此记录错误 方便日后查看