SQLyog 连接不上虚拟机上的mysql容器 client does not support authentication protocol requested by server
alter user 'root'@'%' identified by '你的密码' password expire never;alter user 'root'@'%' identified with mysql_native_password by '你的密码';flush privileges;再次刷新一下权限配置。问题描述:在学习Docker的过程中,centOS 通过docker pu
·
问题描述:
在学习Docker的过程中,
centOS 通过docker pull mysql下载mysql镜像并成功启动mysql容器:
当通过windows主机 SQLyog 连接虚拟的mysql时报如下错误:
原因分析:
出现连接失败的原因:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password。在解决问题的过程中发现:
1.降低mysql版本到5.7可以解决连接不上问题。
2.如果坚持用mysql8.0以上的版本,可以选择修改mysql的配置。(亲测有效)
解决方案:
docker exec -it mysql bash 进入登录mysql
修改配置命令:
alter user 'root'@'%' identified by '你的密码' password expire never;
alter user 'root'@'%' identified with mysql_native_password by '你的密码';
flush privileges;再次刷新一下权限配置。
修改完成,通过宿主机访问数据库:
服务器的安全组端口开了没 ~_~
更多推荐
已为社区贡献2条内容
所有评论(0)