发布日期:2025-08-13 08:09点击次数:
飞牛OS 目前仍然是一款处于快速迭代的 NAS 系统,官方应用商店里的可选软件十分有限,尤其缺乏像群晖那样一键安装的数据库套件。我的N100 NAS组建起来到如今已经半年多了,刚想起来需要在这套系统里跑 MySQL,只能依靠 Docker了。本文将完整演示如何在飞牛 OS 中配置并运行 MySQL 容器,力求让初学者也能顺利跟着操作。
飞牛 OS 默认带有 Docker 桌面端,打开镜像仓库搜索栏,输入 mysql 并按回车,官方版镜像通常排在第一位,点击下载即可。几分钟就能下载完成。
镜像下好后,需要规划一块持久化存储区域来放置数据文件。进入文件管理器,在希望的磁盘分区中新建一个名为 mysql 的文件夹,这样一来,即使以后升级或重建容器,原有数据库依旧可以完整保留,只需重新挂载即可。
Docker 右上角添加容器,资源限制可按默认值,勾选开机自启,让系统重启后数据库能自动恢复服务。下一步进入高级设置,首先是端口映射,把容器的 3306 端口暴露到主机同号端口即可,33060 属于 MySQL X 协议端口,如暂时用不到可以先不映射,后期再补也没问题。
随后切到存储标签,将刚才准备好的 docker 文件夹对应到上述容器内路径,路径输入框支持手动填写,也可用文件选择器来定位,务必确保大小写与斜杠一致,否则容器可能启动失败。
最关键的一步是添加密码,否则会启动失败。点击环境标签,添加变量:MYSQL_ROOT_PASSWORD 写入数据库 root 密码,务必牢记并妥善保管;
接下来验证数据库是否能连接。使用heidisql输入域名,端口用户名密码,成功连接,说明安装成功
除了使用 GUI 向导,在 SSH 环境下也能一条命令完成部署。连接到系统后切换至 root,再执行如下 docker run 指令,把路径与密码替换成自己的即可:
docker run --name mysql -d -p 3306:3306 -v /vol1/1000/docker/MySQL/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=YourPassword mysql:latest
脚本执行后同样会自动初始化数据库,接入方式与 GUI 部署完全一致。若日后需要升级版本,建议先备份 data 目录,其次停止并删除旧容器,再拉取新镜像并保持原挂载路径不变,就能实现平滑迁移。
至此,飞牛 OS 上的 MySQL 环境已完整就绪。通过 Docker 提供的隔离与可移植性,数据库可以做到随时备份、快速迁移,同时也便于版本控制和资源限制。
配置完成后,MySQL 容器整体运行相当流畅。飞牛 OS 默认的 cgroup 限制足以应对家庭或小型办公室的查询负载,平时 CPU 占用常年维持在个位数,内存占用也能稳定控制在 300 MB 左右。借助容器机制,数据库与系统其他服务完全隔离,哪怕同时开着影音转码或下载任务,也几乎不会相互抢占资源。读写速度方面,如果数据目录挂载到 SSD 分区,单表百万级数据的常规 SELECT 基本在毫秒级返回。
不过,数据库一旦承载了实际业务,备份就成了头等大事。建议同时准备逻辑备份和物理备份两套方案:
逻辑备份:每天凌晨用 mysqldump 导出所有库,并在脚本末尾用 gzip 压缩;文件小、可跨版本恢复,但恢复速度相对较慢。
chmod +x /usr/local/sbin/mysql_backup.sh
物理备份:每周对 /mysql 目录做一次冷备,方法是在停容器的前提下直接 rsync 或 zfs snapshot;优点是极速恢复,缺点是占空间且需与当前版本保持兼容。备份文件可以使用同步功能存放在网盘同步文件夹。
