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

可以看到是能连接成功

相关推荐
O***Z6165 分钟前
三分钟内快速完成MySQL到达梦数据库的迁移
数据库·mysql
观测云25 分钟前
Kubernetes CRD 方式配置容器日志采集最佳实践
容器·kubernetes·日志分析
i***22071 小时前
springboot整合libreoffice(两种方式,使用本地和远程的libreoffice);docker中同时部署应用和libreoffice
spring boot·后端·docker
菜鸟小九2 小时前
mysql(锁)
数据库·mysql·oracle
云和数据.ChenGuang3 小时前
运维面试题之oracle和mysql单表最大容量
运维·mysql·oracle
羑悻的小杀马特3 小时前
轻量跨云·掌控无界:Portainer CE + cpolar 让远程容器运维像点外卖一样简单——免复杂配置,安全直达对应集群
运维·网络·安全·docker·cpolar
Z***G4794 小时前
【零基础学Mysql】常用函数讲解,提升数据操作效率的利器
数据库·mysql
aml258__4 小时前
MySQL 数据库管理入门:从创建到删除(T1)
数据库·mysql·oracle·初学数据库
beata4 小时前
MySQL 索引你真的用对了吗?
mysql
TDengine (老段)5 小时前
MySQL/PG/TDengine 时间范围 SQL 表达式
sql·mysql·tdengine