【Docker】保姆级 docker 容器部署 MySQL 及 Navicat 远程连接

🥰🥰🥰来都来了,不妨点个关注叭!
👉博客主页:欢迎各位大佬!👈

文章目录

  • [1. docker 容器部署 MySQL](#1. docker 容器部署 MySQL)
    • [1.1 拉取mysql镜像](#1.1 拉取mysql镜像)
    • [1.2 启动容器](#1.2 启动容器)
    • [1.3 进入容器](#1.3 进入容器)
    • [1.4 使用 root 用户登录](#1.4 使用 root 用户登录)
  • [2. Navicat 连接远程服务器里 docker 中的 mysql](#2. Navicat 连接远程服务器里 docker 中的 mysql)
    • [2.1 点击 SSH](#2.1 点击 SSH)
    • [2.2 点击常规](#2.2 点击常规)
  • [3. 可能遇到的问题](#3. 可能遇到的问题)
    • [3.1 2013 - Lost connection to server at 'handshake: reading initial communication packet', system error: 0](#3.1 2013 - Lost connection to server at ‘handshake: reading initial communication packet’, system error: 0)

本期内容基于 MySQL 5.7 版本~

1. docker 容器部署 MySQL

1.1 拉取mysql镜像

xml 复制代码
docker pull mysql:5.7

1.2 启动容器

xml 复制代码
docker run -d --name oj-mysql -p 3306:3306 -e "TZ=Asia/Shanghai" -e "MYSQL_ROOT_PASSWORD=123456" mysql:5.7

输入这一行命令之后,有一个容器 id,记得拷贝,下面进入容器中,需要使用这个容器 id

1.3 进入容器

xml 复制代码
docker exec -it 容器id bash

这个容器 id 记得替换哦~

1.4 使用 root 用户登录

xml 复制代码
mysql -u root -p123456

成功后,如下图:

2.1 点击 SSH


注意:这里不要直接点测试连接了,因为还没填完呢!!!

2.2 点击常规

即可完成连接~

3. 可能遇到的问题

3.1 2013 - Lost connection to server at 'handshake: reading initial communication packet', system error: 0

报错截图如下:

解决方案1:查看阿里云是否添加了这个安全组 3306 端口!

没有则进行添加~再重新连接试试

(笔者添加错了实例的安全组,导致一直报 2013 错误码,心想,明明添加了呀,然后折腾几个小时检查其它配置等,甚至连不同的网试,小伙伴们千万不要犯这样的错哦,简直不要太难受啦!)

安全组如何添加可参考往期内容:【Linux】手把手教你如何部署Java项目至云服务器上

解决方案2:容器共享宿主机网络配置

通过命令docker run --net host 这个命令让容器共享宿主机网络配置;

xml 复制代码
docker run --net host -d -p 3306:3306 --name ldy.mysql -e MYSQL_ROOT_PASSWORD=root docker.io/library/mysql:latest

✨✨✨本期内容到此结束啦~ 希望小伙伴们过程中一切顺利~

相关推荐
维度攻城狮1 小时前
Docker优雅地运行OpenClaw
运维·docker·容器·openclaw·openclaw安装
白露与泡影3 小时前
探索springboot程序打包docker的最佳方式
spring boot·后端·docker
ノBye~4 小时前
Docker Compose+Jenkins自动化部署全流程
git·docker·jenkins
wuxingge5 小时前
docker部署solara音乐播放器
docker·容器
❀͜͡傀儡师5 小时前
docker部署Antigravity-Manager
运维·docker·容器·antigravity
sg_knight6 小时前
Docker环境下的MinIO安装,以及如何正确配置数据持久化(避坑篇)
运维·docker·容器·minio·ftp·cos·oss
会飞的大可6 小时前
Docker容器项目无法访问MySQL的解决策略
mysql·docker·容器
cool32007 小时前
二进制基于kubeasz部署 K8s 1.34.x 高可用集群实战指南-第一章节基础环境准备(1-4)
云原生·容器·kubernetes
涛声依旧393167 小时前
构建部署kubernetes所需主机
linux·运维·云原生·容器·kubernetes
eRTE XFUN8 小时前
Redis 设置密码(配置文件、docker容器、命令行3种场景)
数据库·redis·docker