← 中文资源

简体中文版本

备份与恢复

备份把数据复制到独立存储,只有通过恢复演练证明能在目标内重建系统时才有价值。

阅读英文原文

工作原理

备份有三种常见形式:逻辑转储、物理快照和持续日志归档。全量备份复制全部数据,增量备份复制自上次备份以来的变化,差异备份复制自上次全量以来的变化;持续归档 WAL 可支持时间点恢复。

pg_dump --format=custom --file=app.dump appdb
pg_restore --dbname=appdb_restore --clean app.dump

副本应存放在独立账号或区域并加密,密钥单独管理。恢复时进入干净环境,重放日志到目标时间,校验校验和与行数,再切换流量。

使用场景与取舍

所有有状态系统都需要备份,但模式由 RPO 和 RTO 决定。24 小时 RPO 可接受夜间转储;5 分钟 RPO 需要持续日志传输或同步复制加快照。每季度及重大 schema 变更后演练恢复。与复制相比,备份保留历史,而不是镜像当前状态。

频繁全量备份消耗带宽和存储;增量链降低成本,却延长恢复时间并依赖每一环。不可变、气隙副本能抵御勒索软件,但恢复更慢。加密能保护被盗介质,密钥丢失则无法恢复,因此密钥托管需要单独方案。

具体示例

一次恢复演练应从空环境开始,记录实际耗时和丢失数据量,并与 RTO/RPO 对照。只检查备份任务成功、不执行恢复,不能证明备份可用。