使用 Docker 部署 MySQL 8.0 的完整步骤如下:

1. 准备本地数据持久化目录

创建用于挂载数据文件、配置文件及日志的本地目录,避免容器删除后数据丢失:

Bash

mkdir -p /opt/mysql/{data,conf,logs}

2. 单条命令快速启动容器

运行以下命令拉取镜像并启动容器:

Bash

docker run -d \
  --name mysql-server \
  --restart always \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD='YourPassword123!' \
  -v /opt/mysql/data:/var/lib/mysql \
  -v /opt/mysql/conf:/etc/mysql/conf.d \
  -v /opt/mysql/logs:/var/log/mysql \
  mysql:8.0

参数说明:

  • -d:后台运行容器。

  • --name mysql-server:指定容器名称。

  • --restart always:容器异常退出或 Docker 重启时自动拉起。

  • -p 3306:3306:将宿主机的 3306 端口映射到容器的 3306 端口。

  • -e MYSQL_ROOT_PASSWORD='YourPassword123!':设置 root 用户的初始密码(直接生效,无需从日志找临时密码)。

  • -v /opt/mysql/...:挂载宿主机目录实现数据持久化。

3. 检查容器运行状态

Bash

# 查看容器是否正常处于 Up 状态
docker ps | grep mysql-server

# 查看容器启动日志
docker logs -f mysql-server

4. 验证登录

方式一:进入容器内部命令行登录

Bash

docker exec -it mysql-server mysql -u root -p'YourPassword123!'