管理共享的 MySQL Docker 容器,用于本地开发环境。处理容器生命周期、数据库创建/删除以及跨实例数据迁移。
MySQL 管理器
功能概述
MySQL 管理器是一项面向实际任务的技能,主要用于管理本地 dev 实例使用的共享 MySQL 容器;Architecture.;
核心要点
- MySQL 容器运行在共享的 Docker 网络上( 默认为 nginx- proxy net) , 使其成为。
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
使用与执行
该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
MySQL Manager
管理本地开发实例共用的 MySQL Docker 容器。
架构
mysql-manager/ ├── docker-compose.yml # MySQL 8.0 容器 └── run.sh # 生命周期管理 + 数据库管理 CLI
MySQL 容器运行在共享的 Docker 网络上(默认为 nginx-proxy_net),因此所有应用容器均可通过主机名(codai_db)访问该容器。数据持久化存储于命名卷(mysql_data)中。
命令
./run.sh start # 启动 MySQL 容器 ./run.sh stop # 停止容器(数据保留在卷中) ./run.sh status # 查看容器状态 + 列出数据库 ./run.sh wait # 阻塞等待,直至 MySQL 就绪(适用于脚本调用) ./run.sh create-db# CREATE DATABASE IF NOT EXISTS ./run.sh drop-db # DROP DATABASE(交互式确认) ./run.sh dump # mysqldump src | mysql dest ./run.sh list-dbs # SHOW DATABASES(过滤后输出)
任务执行方式
首次启动 MySQL
cd mysql-manager && ./run.sh start
首次运行时,Docker 将创建数据卷并初始化 codai_main 数据库。
为新实例创建数据库
./run.sh create-db codai_alpha
将主数据库快照复制到新实例
./run.sh dump codai_main codai_alpha
删除工作树对应的数据库
./run.sh drop-db codai_alpha # 会提示确认
检查状态
./run.sh status
启动顺序
必须在启动任意应用实例之前先启动 MySQL:
proxy-manager:./run.sh start(创建共享 Docker 网络)mysql-manager:./run.sh start(加入共享网络)worktree-manager:./run.sh start
配置
可通过环境变量或 mysql-manager/ 目录下的 .env 文件设置:
| 变量 | 默认值 | 用途 |
|---|---|---|
MYSQL_CONTAINER |
codai_db |
容器名称 |
MYSQL_ROOT_PASSWORD |
secret |
MySQL root 密码(主配置项) |
MYSQL_ROOT_PASS |
(备用) | 旧版别名;MYSQL_ROOT_PASSWORD 优先级更高 |
MYSQL_MAIN_DB |
codai_main |
主数据库名称 |
MYSQL_PORT |
3307 |
宿主机端口(映射至容器内 3306) |
CODAI_NETWORK |
nginx-proxy_net |
共享 Docker 网络名称 |
规则
- 禁止删除
MYSQL_MAIN_DB—— 它是所有快照的唯一可信数据源。 drop-db命令始终要求交互式确认。- 所有 SQL 或 Shell 操作前,数据库名均需通过正则表达式
^[a-z][a-z0-9_]{0,62}$校验。 stop命令保留 Docker 卷中的数据。docker compose down -v仅在明确需要清除持久化数据时使用。- 容器配置了
restart: unless-stopped—— Docker 守护进程重启后会自动恢复运行。完成使用后请运行./run.sh stop显式停止。 - 宿主机端口(
MYSQL_PORT)仅绑定至127.0.0.1。在共享机器上,请务必设置非默认的MYSQL_ROOT_PASSWORD。 - 容器名称(
codai_db)即为后端应用连接数据库时使用的主机名。
相关插件
proxy-manager—— 管理用于将流量路由至各应用实例的 nginx-proxy(需最先启动)worktree-manager—— 管理应用实例与 Git 工作树(依赖本插件)
热门AI工具
相关专题
PHP中文网推出“Qwen大模型赋能MySQL”专题,深度解析NL2SQL与智能运维实战。从自然语言查询到数据库优化,手把手教你用AI提升数据效率。立即访问专区,解锁智能数据库交互新体验!
162
2026.06.29
本专题专为零基础用户设计,系统梳理MySQL数据库核心知识。你将学习如何创建库表、进行数据的增删改查,并掌握主键、索引、事务等关键性能优化点,助你快速上手,避开新手常见误区,为Java后端开发或数据库运维打下坚实基础。
302
2026.05.06
专注于 phpEnv 中 MySQL 数据库的管理与运维操作,讲解 MySQL 5.7 / 8.0 多版本安装与切换、root 密码设置与重置、my.ini 关键参数(字符集/缓存/连接数)配置、phpMyAdmin 可视化管理工具的使用、数据库与数据表的创建导入导出、定时备份与一键还原方案、开启远程连接与用户权限分配,以及慢查询日志的开启与基础 SQL 性能分析,帮助开发者高效管理本地数据库。
142
2026.04.23
深入讲解 XAMPP 中 Apache 和 MySQL 的核心配置技巧,包括 httpd.conf 端口修改、虚拟主机(VirtualHost)多站点配置、MySQL 用户权限管理与远程连接设置、php.ini 关键参数调优,以及 SSL 证书的本地配置方法,适合有一定基础的开发者进阶使用。
325
2026.04.08
本专题围绕宝塔面板中的数据库管理功能展开,系统讲解 MySQL 安装配置、数据库创建与权限管理、慢查询分析及性能优化方法。内容涵盖索引优化、连接数调优、缓存机制配置以及数据库备份策略。通过实操讲解,帮助开发者提升数据库运行效率与稳定性。
145
2026.04.07
本专题讲解宝塔面板中数据库管理与优化技巧,包括数据库备份恢复、慢查询日志分析、索引优化及连接数配置。通过实际案例,帮助用户提升数据库运行效率。
161
2026.03.25
MySQL权限迁移需通过特定方法复制用户、密码及权限配置。1. 使用mysqldump导出mysql库中权限表,再导入目标数据库;2. 查询系统表生成GRANT语句,手动在目标库执行;3. 同版本下可直接复制mysql系统库文件,但风险高等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。
156
2025.11.28
MySQL 数据库的端口号可以通过以下方法查看:使用 SHOW VARIABLES LIKE '%port%' 命令查看 MySQL 配置文件(Windows 和 Linux/Unix)询问 MySQL 服务器(仅限于 Linux/Unix)使用 netstat 命令(仅限于 Linux/Unix)查看 MySQL 服务设置(仅限于 Windows)。
670
2025.11.03
排查MySQL启动失败时,应首先检查错误日志(如hostname.err或/var/log/mysql/error.log),通过搜索ERROR、Failed等关键词定位问题,再依次检查配置文件语法、路径权限、端口占用及PID文件残留等情况。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。
386
2025.10.24
热门下载
相关下载
精品课程
最新文章