# 1. PITR 恢复后如何验证数据一致性(行数校验、业务逻辑校验) A 恢复后无需与恢复前的基准对比 B 只需行数一致即可确认恢复成功 C 业务逻辑校验可有可无,不影响恢复可靠性 D 行数校验只能证明数量一致,业务逻辑校验才能证明业务可用,两者需结合 ✓ 正确答案
# 2. PITR 的 RPO 粒度由什么决定?如何平衡日志保留成本与恢复粒度 A RPO 粒度由日志归档频率与保留时长决定,日志覆盖到上一全量即可,按业务差异化保留以平衡成本 ✓ 正确答案 B 日志保留越短,恢复粒度越细 C RPO 粒度与日志无关,只由全量备份决定 D 所有库都应无限期保留全部日志
# 3. 基于 binlog/WAL 的 PITR 恢复流程是怎样的?全量备份与日志重放如何衔接 A 先重放日志,再恢复全量备份 B 先恢复全量备份作为基线,再从其记录的日志位置重放日志到目标时间点 ✓ 正确答案 C 全量备份无需记录日志位置,可从头重放 D 日志缺失不影响 PITR 精度
# 4. 如何设计并演练一次『恢复到误删表前一秒』的 PITR 操作 A 重放时无需跳过 DROP 事务 B 直接恢复到误删当天零点即可,无需精确定位 C 需精确定位误删时间点并重放到其前一事务边界,配合全量基线与日志起点,用临时实例演练验证 ✓ 正确答案 D 演练应在生产库上直接进行
# 5. MySQL(xtrabackup+binlog)与 PostgreSQL(base backup+WAL archive)的 PITR 实现有何差异 A 两者的恢复目标与命令完全一致 B 两者都用逻辑日志重放 C 两者都无需全量备份 D MySQL 用 binlog 配合 mysqlbinlog 重放,PostgreSQL 用 WAL 配合 restore_command 原生回放,日志层级不同 ✓ 正确答案
# 6. Oracle Flashback 与 PITR 的适用场景与边界是什么 A Flashback 适合单表/单行快速回退,依赖闪回日志;PITR 适合整库重放到目标时间点,依赖备份与归档 ✓ 正确答案 B Flashback 可以替代所有 PITR 场景 C PITR 比 Flashback 更快,适合秒级恢复 D Flashback 不依赖任何日志
# 7. PITR 与延迟复制(delayed replica)在误操作恢复中的协同 A 延迟复制会提高数据实时性,无滞后 B 延迟复制可完全替代 PITR C 延迟复制与 PITR 无法结合使用 D 延迟复制保留误操作前的数据可快速止损,PITR 提供精确到目标时间点的兜底,两者互补 ✓ 正确答案
# 8. PITR 回放引擎的工作原理中 redo/WAL 的 LSN 与时间戳定位、并行回放与恢复中断续点 A 用 LSN/时间戳定位目标,并行回放加速但需处理依赖,中断后可断点续传 ✓ 正确答案 B 回放只能单线程,无法并行 C 恢复中断后必须从头重放 D 时间戳与 LSN 定位完全等价,无区别
# 9. PITR 在大型数据库(TB 级)场景下的加速手段(并行回放、增量备份) A 增量备份会增加重放量,不利于加速 B 并行回放利用多核加速,增量备份缩短重放链,配合高性能 I/O 缩短恢复时间 ✓ 正确答案 C 并行回放无法提升任何恢复速度 D 恢复时间与硬件无关,无需压测
# 10. PITR 对存储与 I/O 资源的影响及生产演练窗口选择 A 演练无需隔离环境,可直接在生产执行 B PITR 恢复不消耗任何资源 C 演练应在业务高峰期进行以检验真实负载 D PITR 大量消耗存储与 I/O,演练应选在业务低峰期并在隔离环境执行,预留余量 ✓ 正确答案
# 11. PITR 演练的自动化脚本与回滚验证流程 A 自动化脚本无法重复执行 B 演练脚本无需验证恢复结果 C 演练失败无需回滚,直接放弃即可 D 脚本应把恢复、重放、验证、清理固化为可重复阶段,并支持失败回滚与幂等执行 ✓ 正确答案
# 12. binlog/WAL 损坏或丢失时 PITR 的降级策略 A 日志丢失后完全无法恢复任何数据 B 可恢复到最后一个完整日志点、退化为全量备份点,或用从库/快照补齐,并靠日志冗余与监控预防 ✓ 正确答案 C 日志损坏不影响 PITR 精度 D 只需一份日志,无需冗余或校验
# 13. MySQL binary log 的 format(row/statement/mixed)对 PITR 准确性的影响 A 三种格式对 PITR 准确性无任何影响 B statement 格式记录行变更,重放最准确 C row 格式记录每行实际变更,重放最准确,是 PITR 最可靠的选择 ✓ 正确答案 D mixed 格式永远最准确,不会走 statement
# 14. PITR 与备份组合中全量基线加归档日志的恢复链如何缩短恢复时间 A 基线越旧,恢复越快 B 用更近的全量/增量备份做基线并只重放到目标点,可缩短日志重放量、加快恢复 ✓ 正确答案 C 日志重放量越大,恢复越快 D 恢复链断裂不影响恢复
# 15. PITR 演练场景中误删表、误更新与误 DDL 三类误操作的恢复步骤与验证方法 A 误 DDL 无需验证表结构 B 三类误操作都恢复到同一时间点即可 C 三类都需停到误操作前的时间点,分别验证行数、被改值与表结构,用临时实例演练 ✓ 正确答案 D 误更新无需验证被影响行的值
# 16. PITR 的关键配置项中归档开启、恢复目标(时间/LSN)与恢复模式的参数如何设置 A 归档无需开启也能精确 PITR B 需开启归档/日志、指定恢复目标(时间/LSN)并设置恢复模式,归档完整是精确重放的前提 ✓ 正确答案 C 恢复目标可任意,不影响精度 D 恢复模式参数无需设置
# 17. PostgreSQL WAL archiving 与 PITR 中 restore_command 的配置要点 A 归档丢失不影响 PITR B restore_command 负责写归档,archive_command 负责取回 C 无需 wal_level=replica 即可归档 D archive_command 负责把 WAL 写入归档,restore_command 负责恢复时取回 WAL,两者需正确配置并演练验证 ✓ 正确答案