DBAtlas · 数据库运维图谱

故障转移后将旧主库恢复为备库(REINSTATE)

OracleData Guard

命令

# 1) Bring the old primary to MOUNT (sqlplus / as sysdba):
#    SQL> STARTUP MOUNT;
#    (RAC: srvctl start database -db <old_primary_db_unique_name> -startoption mount)
# 2) From DGMGRL connected to the new primary:
dgmgrl sys@<new_primary_db_unique_name>
REINSTATE DATABASE '<old_primary_db_unique_name>';
# 3) Verify:
SHOW CONFIGURATION;
SHOW DATABASE '<old_primary_db_unique_name>';

作用

使用 flashback database 将旧主库闪回到故障转移 SCN 之前,转换为物理备库并开始从新主库接收 redo;无需从头重建备库。

适用场景

故障转移后,当旧主库服务器/存储再次可访问时;FSFO 自动故障转移后(observer 通常会自行 reinstate)。

注意

必须在故障转移之前就已在旧主库上启用 flashback,并且 flashback 日志必须覆盖故障转移 SCN(db_flashback_retention_target、FRA 大小);否则 reinstate 会失败,必须用 RMAN duplicate 重建备库。故障转移后写入旧主库的数据会永久丢失。

在 DBAtlas 中打开 →

相关内容