本地远程连接Docker中的MySQL报错的解决办法(1251)

错误如下:
本地远程连接Docker中的MySQL报错的解决办法(1251)
原因:mysql 8.0 默认使用 caching_sha2_password 身份验证机制;客户端不支持新的加密方式
解决方案:修改用户(root)的加密方式

1.进入mysql容器内部,在docker中输入

docker exec -it mysql02 bash

本地远程连接Docker中的MySQL报错的解决办法(1251)

2.登录mysql

mysql -u root -p

3.设置用户配置项

(1)查看用户信息

select host,user,plugin,authentication_string from mysql.user;

(2)修改加密方式

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';  ### 123456 mysql

(3)再次查看用户信息
本地远程连接Docker中的MySQL报错的解决办法(1251)
(4)再次连接成功
本地远程连接Docker中的MySQL报错的解决办法(1251)
借鉴自“简书”:https://www.jianshu.com/p/07a37159f85c
在此感谢作者:tengxt