结论先行:备份策略=备份频率×保留周期×恢复演练×异地容灾,四个要素缺一不可。通用基线建议:全量备份每周 1 次、增量备份每日 1 次、保留 30 天、每季度演练 1 次恢复;起步阶段把 RTO(Recovery Time Objective,恢复时间目标)定在 4 小时以内、RPO(Recovery Point Objective,恢复点目标)定在 24 小时以内,随业务重要性逐步收紧。
低代码平台把页面、流程、数据模型的搭建变简单了,但很多团队因此忽略了一件事:平台里沉淀的业务数据,正在变成企业最重要的资产。客户数据、审批记录、订单流水一旦丢失,重建成本远高于搭建成本。本文给出一套小团队也能落地的备份恢复方案。
先定两个指标:RTO 与 RPO
用生活类比理解:RPO 决定"最多能接受丢多少数据",RTO 决定"最多能接受停多久"。
- RPO 越小,要求备份频率越高。RPO=24 小时意味着每天备份 1 次即可;RPO=1 小时则需要每小时增量备份或数据库实时复制。
- RTO 越小,要求恢复自动化程度越高。RTO=24 小时可以人工从容恢复;RTO=15 分钟就要靠主从切换、热备接管。
不同业务分级设定即可,不必一刀切:核心交易类业务 RPO 分钟级、RTO 小时级;内部管理报表类业务 RPO 天级也够用。指标定完还要验证平台真能做到,低代码平台的稳定性预警里有签约前的自查方法。
备份策略清单(可直接套用)
| 备份对象 | 方式 | 频率 | 保留周期 |
|---|---|---|---|
| 业务数据库 | 全量备份(mysqldump/pg_dump 或物理备份) | 每周 1 次 | 30 天 |
| 业务数据库 | 增量备份 / binlog 日志归档 | 每日 1 次(binlog 实时归档) | 7~14 天 |
| 平台配置数据 | 页面 DSL、工作流定义、数据模型导出 | 每周 1 次或大版本发布前 | 90 天 |
| 服务器系统盘 | 云快照 / 磁盘镜像 | 每周 1 次 | 2~4 份滚动 |
| 上传的附件文件 | 对象存储跨区复制或 rsync | 每日 1 次 | 30 天 |
两点提醒:一是低代码平台的"配置"也是资产——以猫拽低代码(CatPull)为例,页面以 DSL Schema 描述、流程以节点编排定义,这些属于平台库数据,要与业务表一起纳入备份;二是自托管部署时数据库就在自己服务器上,直接使用数据库官方备份工具链即可,不必依赖第三方方案。
异地容灾:3 种方案对比
"备份盘和数据在同一台服务器"等于没有备份,至少要做到异地(另一机房或另一地域)存储一份。
| 方案 | 做法 | RPO | 成本 | 适用 |
|---|---|---|---|---|
| 异地冷备 | 定期把备份文件上传到异地对象存储 | 24 小时 | 极低 | 绝大多数团队起步首选 |
| 定时同步 | 数据库定时复制到异地从库 | 小时级 | 中 | 有 DBA 能力的团队 |
| 主从热备 | 异地实时复制+自动切换 | 分钟级 | 高 | 核心交易业务 |
恢复演练:被 80% 团队跳过的一步
备份有效性的唯一证明是"成功恢复过一次"。建议每季度执行一次演练,标准流程 4 步:
- 随机抽取一份最近的全量备份与对应的增量备份。
- 在隔离环境(测试机)完整恢复数据库与平台配置。
- 抽查关键数据:对比最新业务记录的时间点,验证 RPO 是否达标。
- 记录恢复耗时,对照 RTO 目标,超时则优化脚本。
演练中常见问题:备份文件本身损坏、备份脚本早已静默失败、恢复后发现缺少某张表。这些问题只有演练才会暴露——纸面上的备份策略是给审计看的,演练过的策略才是给故障用的。
FAQs
Q1:数据库开主从复制还需要备份吗?
A:需要。主从复制防的是硬件故障,防不了误删数据——主库上执行的 DROP TABLE 会同步到从库。备份是数据的最后一道防线,两者不可互相替代。
Q2:备份文件要不要加密?
A:要。备份文件往往包含全量业务数据,离开生产机房后应加密存储(使用数据库自带加密或压缩后加密),密钥与备份文件分开保管,避免"备份即泄露"。
Q3:RPO 定成多少合适?
A:按业务承受能力倒推。问业务方一句话:"能接受丢失多久之内录入的数据?"内部管理系统答"一天"很常见,对应每日备份;涉及交易资金的数据答"几分钟",就要上实时复制,成本随之上升。
延伸阅读
- 低代码私有化部署全流程:服务器、域名与 HTTPS——备份是私有化部署的配套动作。
- 操作审计日志设计:满足内控与等保要求——日志归档与备份策略常常一起规划。
- 数据库入门教程——看懂备份策略背后的数据库基础概念。
猫拽智库