1.
定义目标与策略(RTO/RPO)
目标设定:明确每类业务的恢复时间目标(RTO)与恢复点目标(RPO)。
小分段:分级方法——A类(分钟级RTO/RPO)、B类(小时级)、C类(天级)。记录在SLA文档中并经管理层确认。
2.
选择备份类型与存储地点
步骤:在香港本地机房同时部署本地快照 + 异地备份(同城机房或云)。
小分段:使用ZFS/LVM快照做近线恢复,使用rsync或Bacula做异地增量备份,重要数据同时推送到香港云与海外云做多区域保护。
3.
实现备份自动化(示例)
Linux文件备份示例:使用rsync+cron。
小分段:crontab示例:0 2 * * * rsync -av --delete /data/ /backup/local/data/;再使用rsync或 rclone 同步到异地:rclone sync /backup/local remote:hk-backup/$(date +\%F)
4.
数据库备份与一致性处理
MySQL示例:使用mysqldump或XtraBackup保证一致性。
小分段:步骤——1) flush tables with read lock;2) 执行mysqldump --single-transaction或xtrabackup进行物理备份;3) 解锁并传输备份文件到异地。
5.
加密与权限管理
步骤:传输使用TLS/SSH,存储使用AES-256加密。
小分段:使用openssl enc 对备份打包加密或使用云端加密服务;备份服务器仅允许备份账号访问,启用多因素与密钥管理。
6.
备份验证与可恢复性测试
每日/每周自动校验备份完整性(checksum)。
小分段:运行sha256sum并比对;每月执行一次完整恢复演练(最低恢复到隔离测试环境),记录时间与差错。
7.
恢复流程(文件级)
文件恢复步骤:1) 确认目标时间点;2) 从备份仓库拉取快照或增量;3) 在隔离目录恢复并校验;4) 切换生产路径或rsync覆盖并重启服务。
小分段:命令示例:rsync -av /backup/2026-06-01/data/ /var/www/html/;验证:diff -r。
8.
恢复流程(数据库级)
MySQL恢复步骤:1) 停服务;2) 恢复物理文件或导入sql;3) 应用binlog增量;4) 启服务并验证数据一致性。
小分段:示例:mysql -u root -p < dump.sql;通过校验行数或业务测试用例确认。
9.
灾难恢复(DR)切换演练准备
准备清单:编写Runbook,列明负责人、联系方式、恢复序列与回滚点。
小分段:准备网络路由、DNS TTL 降低(如300s)、备用IP与证书,演练前通知相关干系人。
10.
灾难演练(桌面演练)步骤
桌面演练流程:1) 模拟场景并讨论步骤;2) 校对Runbook;3) 更新责任与通信流程。
小分段:时长建议1-2小时,记录关键问题并在48小时内确认改进措施。
11.
灾难演练(实机演练)步骤
实机演练流程:1) 在维护窗口执行全栈故障模拟(如关闭主机或断网);2) 按Runbook进行DNS切换、备份恢复与服务验证;3) 计时并记录偏差。
小分段:要点——在沙箱或非峰时运行,确保可回滚,演练后生成报告并更新SOP。
12.
监控与持续改进
监控指标:备份成功率、恢复时间、恢复完整性比例。
小分段:使用Prometheus+Alertmanager或备份软件自带告警,遇到失败立即触发SOP并执行根因分析(RCA)。
13.
问:在香港机房如何保证跨机房快速切换?
答:通过异地热备与DNS+负载均衡结合。
小分段:提前准备热备节点、同步存储或使用实时复制(例如MySQL replication、DRBD),并将DNS TTL降至短值以加快切换。
14.
问:如何验证备份真实可用(避免“只是文件存在”)?
答:定期做恢复验证与自动化回归测试。
小分段:每周从备份恢复到隔离环境,执行业务 smoke test,记录日志与校验结果,确保可在RTO内完成。
15.
问:演练后发现RTO超标,应如何改进?
答:分析瓶颈并采取针对性优化。
小分段:步骤——1) 运行RCA识别慢点(网络、IO、脚本);2) 优化并行恢复策略、分片恢复或增加带宽;3) 再次演练验证改进效果。
来源:香港服务器托管中数据备份恢复策略与灾难演练建议