mysql报错:ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded

环境:centos 7.4.1708

docker版的mysql版本:8.0.28

一、故障现象

   二、故障原因

     出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在最新的 docker mysql 8.0+ 以上版本, 新的加密规则更换为了 caching_sha2_password。

三、解决办法

把mysql用户登录密码加密规则还原成 mysql_native_password 模式

3.1 进入容器

[root@wangzy ~]# docker exec -it 011ade47daa8 /bin/bash
bash-4.4# mysql -h127.0.0.1 -uroot -p
Enter password: 

 3.2 修改加密规则

# 1、进入容器
[root@wangzy ~]# docker exec -it 011ade47daa8 /bin/bash

# 2、连接mysql并输入密码
bash-4.4# mysql -h127.0.0.1 -uroot -p
Enter password: 

# 3、修改规则
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
mysql> FLUSH PRIVILEGES;
mysql> quit

# 4、退出容器
bash-4.4# exit

# 5、再次验证
[root@wangzy ~]# mysql -h127.0.0.1 -uroot -p
Enter password: 

MySQL [(none)]> 

 

 

完结。

posted on 2022-05-24 14:21  wangzy-Zj  阅读(2974)  评论(0编辑  收藏  举报