• 技术文章 >运维 >Docker

    docker连接mysql失败怎么办

    藏色散人藏色散人2022-10-21 16:06:15原创450

    docker连接mysql失败的解决办法:1、通过“docker ps”命令查看正在运行的容器;2、运行“docker exec -it b30062adc08c /bin/bash”进入mysql容器;3、输入“mysql -u root -p”命令;4、重启mysql,再使用navicat连接即可成功。

    php入门到就业线上直播课:进入学习

    本教程操作环境:linux7.3系统、docker19.03版、Dell G3电脑。

    docker连接mysql失败怎么办?

    连接docker里面的mysql失败解决方法

    场景:在虚拟机的docker容器中安装latest版本的mysql之后,在宿主机中使用navicat连接虚拟机中的mysql出现下图报错:

    331481eb0ce935f862427da81ebcdcb.jpg

    2059 : Authentication plugin ‘caching_sha2_password' cannot be loaded:

    解决办法:

    1、首先docker ps命令查看正在运行的容器,确保我们想要连接的mysql已经启动,如果没启动使用docker start命令启动(下图查看结果表示已经启动了一个mysql)

    3c6c04d80d0d6cf237a392dd64822a5.jpg

    2、接着运行docker exec -it b30062adc08c /bin/bash进入mysql容器

    5bfbfcee6526c8bc6651dc301ab39d9.jpg

    3、再接着输入mysql -u root -p命令,然后输入自己的密码,最后输入更新密码语句:

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

    942d8647e3b9e6aad9d2af708efeb87.jpg

    4、最后重启mysql再使用navicat连接即可成功

    9b8e1613bb486535a95d2572a8af594.jpg

    补充知识: 本地远程连接Docker中的MySQL报错的解决办法(1251)

    错误如下:

    427f3fa419360db8b74d0290b4d524a.jpg

    原因:mysql 8.0 默认使用 caching_sha2_password 身份验证机制;客户端不支持新的加密方式

    解决方案:修改用户(root)的加密方式

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

    docker exec -it mysql02 bash

    7a30ad6385137e0b10834846a1b2f1e.jpg

    2.登录mysql

    mysql -u root -p

    如图所示输入123456回车即可

    fedae71df6bff0a83c8eb28429a8a6e.jpg

    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)再次查看用户信息

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

    af5dcfae46dcef94e0c36b357156570.jpg

    (4)再次使用Navicate等数据库软件连接,成功

    c4d9ae0a0e9e38265b78af91c6bb5b0.jpg

    (5)补充:如果要正常退出不关闭容器,可以通过按Ctrl+P+Q进行退出容器

    从mysql中退出容器:Ctrl+D,按两次

    推荐学习:《docker视频教程

    以上就是docker连接mysql失败怎么办的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    千万级数据并发解决方案(理论+实战):点击学习

    Mysql单表千万级数据量的查询优化与性能分析

    Mysql主从原理及其在高并发系统中的应用

    专题推荐:连接docker mysql失败
    上一篇:docker start起不来怎么办 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• docker hub 进不去怎么办• docker logs 乱码怎么办• docker映射端口出错怎么办• docker start起不来怎么办
    1/1

    PHP中文网