SQLyog连接虚拟机中docker中的mysql过程详解,并解决2003错误

本文介绍了如何在Docker中安装并启动MySQL 5.7,包括使用`docker run`命令创建和启动容器,以及设置端口映射、数据卷挂载和环境变量。同时,针对在SQLyog中连接Docker MySQL遇到的2003错误,文章详细阐述了解决方案,即关闭虚拟机防火墙,并正确使用Linux主机IP进行连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker中安装启动mysql:

  1. 获取镜像docker pull mysql:5.7
  2. 启动并创建mysql容器
    docker run -d -p 3306:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7 【解释】-d 后台运行, -p端口映射(主机端口:容器中mysql端口), -v卷挂载,保持容器与本机文件同步(虚拟机中文件夹:docker中mysql文件夹), -e环境配置,设置密码为123456, --name 容器名。

SQLyog连接docker中mysql:

直接用localhost连接必然报错(2003错误代码),因为这里用的是虚拟机中的主机,而不是我们的windows,查看网上资料有的让改阿里云的安全组规则,添加Mysql 3306端口的,可惜不行,小白一个不懂。改完依旧报错,还看到一篇文章说把连接的ip改为docker里mysql的ip,其实我一开始就是看了这篇文章,然后就一直用docker里mysql的ip来连接,一直报2003错误。然后发现被误导了。 正确的步骤是:
  1. 首先要按照前边步骤创建并启动docker中mysql容器(第一次创建用run,下次就直接docker start mysql01即可,因为容器已经存在了,run的作用是创建及启动)

  2. 关闭虚拟机中防火墙,systemctl stop firewalld

  3. 查看linux主机IPifconfig -a
    在这里插入图片描述

  4. 将inet后面的IP复制
    在这里插入图片描述

  5. 连接成功


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值