在 Docker 中部署 MySQL 是一种快速、轻量且可移植的方式,适合开发、测试甚至部分生产环境。下面介绍如何使用 Docker 部署 MySQL 实例,并确保数据持久化和基本安全配置。
拉取 MySQL 镜像
首先确保已安装 Docker,然后从 Docker Hub 拉取官方 MySQL 镜像:
docker pull mysql:8.0
你也可以指定版本,如 mysql:5.7 或 mysql:8.0,推荐使用稳定版本。
启动 MySQL 容器
使用 docker run 命令启动一个 MySQL 容器,常用参数如下:
-e MYSQL_ROOT_PASSWORD=your_password:设置 root 用户密码 -p 3306:3306:将主机的 3306 端口映射到容器 -v /your/local/data:/var/lib/mysql:挂载数据卷,实现数据持久化 --name mysql-container:为容器命名,便于管理 -d:后台运行容器完整命令示例:
docker run -d \ --name mysql-container \ -e MYSQL_ROOT_PASSWORD=mysecretpassword \ -p 3306:3306 \ -v /Users/yourname/mysql/data:/var/lib/mysql \ mysql:8.0
执行后,MySQL 服务将在后台运行,root 密码为 mysecretpassword。
连接 MySQL 服务
你可以通过以下方式连接数据库:
使用 mysql 客户端进入容器:docker exec -it mysql-container mysql -uroot -p从主机或其他客户端连接:使用 localhost:3306 和 root 账号密码连接,工具如 Navicat、DBeaver 或命令行均可。
数据持久化与配置优化(可选)
为了更灵活地管理配置,可以挂载自定义配置文件:
创建本地配置目录,例如 /Users/yourname/mysql/conf 放入自定义 my.cnf 文件 启动时挂载配置卷:-v /Users/yourname/mysql/conf:/etc/mysql/conf.d
这样可以调整字符集、日志格式、最大连接数等参数。
基本上就这些。只要镜像拉取成功,配置好密码和挂载路径,MySQL 就能稳定运行在 Docker 中。重启容器也不会丢失数据,前提是做了正确的数据卷映射。
