Skip to main content

Module backup

Module backup 

Source
Expand description

每天定时自动备份数据库与 uploads 素材,含自动轮转。 自动定时备份后台任务。

仅在 server feature 启用时编译。每天定点(UTC,见 settings 表 backup_time_utc) 执行一次应用内备份(pg_dump + uploads 打包 + 自动轮转,见 crate::api::database::backup::run_auto_backup),执行结果落库 backup_last_run_* 键供面板展示。

调度语义:

  • 每次循环重读 DB 配置;关闭时挂起等待,不跑空转 tick。
  • 面板保存设置后经 crate::tasks::backup::notify_settings_changed 立即唤醒重排, 无需等原定的下次触发。
  • 任何错误只记录日志,不中断循环(与 post_purge 等任务一致)。

Statics§

SETTINGS_CHANGED 🔒
设置变更通知。Notify 单 permit 语义足够:多次保存折叠为一次重排。

Functions§

notify_settings_changed 🔒
唤醒调度器立即重读设置并重排(update_backup_settings 调用)。
persist_last_run 🔒
落库最近一次自动备份结果(面板展示用)。写库失败只记日志。
run_scheduler
启动自动备份调度循环。