docker安装mysql

1. 拉取mysql的镜像

查找自己需要的版本

复制代码
docker search mysql

拉取版本 这里默认为最新的版本

复制代码
docker pull mysql

2. 创建mysql的配置文件和数据文件

复制代码
mkdir -p /temp/mysql/data
mkdir -p /temp/mysql/conf

3. 启动mysql

复制代码
docker run -p 3306:3306 \
  --name mysql \
  -v /temp/mysql/data:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=自己想设置的密码 \
  -d mysql:latest

参数详解:

  • -p 3306:3306
  • -p 是端口映射选项。
  • 3306:3306 表示将主机的 3306 端口映射到容器的 3306 端口。这是 MySQL 的默认端口,允许你从主机连接到容器内运行的 MySQL 服务。
  • --name mysql
  • --name 用于给容器指定一个名称,这里指定为 mysql。这样你可以通过这个名称来管理容器,例如停止、启动、删除等。
  • -v /temp/mysql/data:/var/lib/mysql
  • -v 是挂载卷选项。
  • /temp/mysql/data:/var/lib/mysql 表示将主机上的目录 /temp/mysql/data 挂载到容器内的 /var/lib/mysql 目录。这样 MySQL 数据库的数据会被持久化到主机上的这个目录中,即使容器被删除,数据也不会丢失。
  • -e MYSQL_ROOT_PASSWORD=密码
  • -e 是环境变量选项。
  • MYSQL_ROOT_PASSWORD=1459Hyh. 设置了 MySQL 数据库的 root 用户密码为 1459Hyh.。这是 MySQL 容器启动时所需要的一个环境变量,用于初始化数据库的管理员密码。
  • -d
  • -d 是后台运行选项。
  • 这个选项表示容器将以守护进程(即后台)模式运行,这样你不会被容器的输出信息所打扰,并且命令行会立即返回。

查看是否启动:

复制代码
docker ps

连接需要开放安全组的33066端口或者关闭防火墙

4. 远程连接测试

可以看到是能连接成功

相关推荐
Bert.Cai6 小时前
MySQL DML简介
数据库·mysql
wydd99_lll7 小时前
docker特权模式下逃逸
运维·docker·容器
mseaspring8 小时前
一款用于监控跨多台主机 Docker 容器的实时终端
运维·docker·容器
考虑考虑8 小时前
SQL语句中的order by可能造成时间重复
数据库·后端·mysql
heimeiyingwang9 小时前
【架构实战】Kubernetes日志收集:EFK/Loki架构
容器·架构·kubernetes
SPC的存折10 小时前
D在 Alpine 容器中手动搭建 Discuz 全攻略(包含镜像一键部署脚本,可直接用)
linux·数据库·mysql·缓存
AgCl2310 小时前
MYSQL-6-函数与约束-3/17
android·数据库·mysql
junqiduhang10 小时前
Win11 MySQL 8.0 安装八步走
数据库·mysql
SPC的存折12 小时前
6、Docker常用配置
运维·docker·容器
图图玩ai12 小时前
SSH 命令管理工具怎么选?从命令收藏到批量执行一次讲清
linux·nginx·docker·ai·程序员·ssh·可视化·gmssh·批量命令执行