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. 远程连接测试

可以看到是能连接成功

相关推荐
于眠牧北3 小时前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
小p1 天前
docker学习: 2. 构建镜像Dockerfile
docker
小p2 天前
docker学习: 1. docker基本使用
docker
Turnip12022 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
崔小汤呀2 天前
Docker部署Nacos
docker·容器
缓解AI焦虑2 天前
Docker + K8s 部署大模型推理服务:资源划分与多实例调度
docker·容器
1candobetter3 天前
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像
docker·容器·eureka
加号33 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏3 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
WeiXin_DZbishe3 天前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5