Docker快速部署MySQL数据库

一条命令部署MySQL
docker run -d --name mysql-server \
  -e MYSQL_ROOT_PASSWORD=your_secure_password \
  -e MYSQL_DATABASE=my_database \
  -p 3306:3306 \
  -v mysql_data:/var/lib/mysql \
  mysql:8.0

命令解析
  1. 基础参数

    • -d:后台运行容器
    • --name mysql-server:容器命名
    • -p 3306:3306:主机端口映射容器端口
  2. 环境变量(关键配置)

    • MYSQL_ROOT_PASSWORD:设置root密码(替换your_secure_password
    • MYSQL_DATABASE:创建初始数据库(替换my_database
  3. 数据持久化

    • -v mysql_data:/var/lib/mysql:使用Docker卷保存数据库文件,避免容器删除时数据丢失
  4. 镜像版本

    • mysql:8.0:使用官方MySQL 8.0镜像(支持替换为mysql:5.7等版本)
验证运行状态
docker ps -f name=mysql-server

输出应包含Up状态和端口映射信息

连接数据库
docker exec -it mysql-server mysql -uroot -p

输入设置的root密码即可进入MySQL命令行

进阶配置(可选)
# 添加自定义配置
docker run ... -v /path/to/my.cnf:/etc/mysql/my.cnf ...

# 指定字符集
docker run ... -e MYSQL_CHARSET=utf8mb4 ...

# 限制资源
docker run ... --memory=2g --cpus=1 ...

注意

  1. 首次下载镜像需等待(约450MB)
  2. 生产环境务必:
    • 使用强密码(12位+大小写字母/数字/符号)
    • 通过--env-file加载敏感信息,避免密码暴露在命令历史中
    • 定期备份mysql_data

更多推荐