ob物理备份问题,restore和recover命令的联系和区别?这两个命令是相互独立的吗
物理备份恢复完整流程
┌────────────────────────────────────────┐
│ RESTORE TENANT │
│ 从备份集 + 归档日志 → 创建 STANDBY 租户 │
│ (一次性操作) │
└──────────────────┬─────────────────┘
│
▼
租户角色: STANDBY (持续从日志源回放)
│
┌──────────────────┴───────────────────┐
│ RECOVER STANDBY TENANT │
│ 控制日志回放的终点: │
│ UNTIL TIME/SCN → 回放到指定点后停止 │
│ UNTIL UNLIMITED → 持续追日志不停 │
│ CANCEL → 取消终点限制 │
│ (可多次执行) │
└──────────────────┬────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ SWITCHOVER / FAILOVER │
│ 将 STANDBY 切换为 PRIMARY (可选) │
└────────────────────────────────────────┘
在 OceanBase 数据库中,物理备份与恢复操作涉及 RESTORE 和 RECOVER 命令,这两个命令紧密关联但各自有着明确的功能和应用场景。
- RESTORE 命令:用于从备份集中恢复指定的数据集。通常涉及到从备份介质中检索备份数据并将其放置到目标位置。
-
RECOVER 命令:用于从恢复点应用事务日志,使数据达到指定的一致性状态。在某些情况下,可能还需要从备份集中恢复事务日志文件以供
RECOVER命令使用。
两者之间的联系:
-
RESTORE命令通常是RECOVER命令的前提。先通过RESTORE命令恢复数据到某个初始状态,再通过RECOVER命令应用后续的日志记录,从而确保数据的一致性和完整性。
两者之间的区别:
-
RESTORE是恢复过程的第一步,专注于数据的恢复; -
RECOVER则是恢复过程的第二步,专注于将数据恢复到某一时刻的状态。
是否相互独立:
-
RESTORE和RECOVER命令不是完全独立的,通常需要结合使用才能完成完整的数据恢复流程。
更具体的参数解释可以参考官方文档中的 ALTER SYSTEM - RESTORE。
详情请参考:
![]()
有道理
一个是转储一个是事务日志恢复啊