Files
Nexus/docs/changelog/2026-06-06-nx-god-menu-audit-round4-mysql-backup-cron.md
T
Nexus Agent 4e1347ba45 fix(deploy): Docker 感知 MySQL 备份与 nx cron 安装
升级/定时备份通过 docker exec 1Panel MySQL 容器 dump,不再依赖宿主机 mysqldump;nx 菜单新增巡检与备份 crontab 安装。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 22:37:49 +08:00

1.4 KiB
Raw Blame History

nx 上帝菜单巡检第四轮 — Docker MySQL 备份 + 运维 cron

内容
日期 2026-06-06
动机 升级时 backup_mysql 因宿主机无 mysqldump 且 URL host 为 1Panel 容器名而静默跳过;db_backup.sh 仍读 Supervisor 时代 .env

变更摘要

  1. mysql_dump_to_file.sh(新):统一 mysqldump 策略 — docker exec MySQL 容器 → 宿主机客户端 → docker run on 1panel-network
  2. backup_mysql:改调共享脚本,不再要求宿主机预装 mysqldump
  3. db_backup.shDocker 生产路径,从 Nexus 容器/volume 解析 NEXUS_DATABASE_URL,默认 /var/backups/nexus
  4. install_ops_cron.sh(新):幂等写入 health_monitor(每分钟)与 db_backup(每日 03:00crontab。
  5. nx:菜单 [e] / 子命令 nx cron 安装上述 cron。

涉及文件

  • deploy/mysql_dump_to_file.sh
  • deploy/install_ops_cron.sh
  • deploy/db_backup.sh
  • deploy/nexus-1panel.sh
  • deploy/nx

迁移 / 重启

  • 无需 DB 迁移;仅需 git pull 更新 host 脚本。
  • 可选:sudo nx cron 或菜单 [e] 安装 crontab。

验证

bash -n deploy/mysql_dump_to_file.sh deploy/install_ops_cron.sh deploy/db_backup.sh
sudo bash deploy/mysql_dump_to_file.sh --output /tmp/nexus-test.sql --root /opt/nexus
ls -lh /var/backups/nexus/
sudo nx cron && crontab -l | grep nexus