페일오버 후 이전 primary를 standby로 복구(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로 이전 primary를 페일오버 SCN 이전 시점으로 되돌리고 physical standby로 변환한 후 새 primary로부터 redo 수신을 시작한다. standby를 처음부터 재구축할 필요가 없다.
사용 시점
페일오버 후 이전 primary 서버/스토리지에 다시 접근할 수 있게 되었을 때, FSFO 자동 페일오버 후(대개 observer가 스스로 reinstate한다).
주의
이전 primary에서 페일오버 이전에 flashback이 활성화되어 있어야 하고, flashback 로그가 페일오버 SCN을 포함해야 한다(db_flashback_retention_target, FRA 크기). 그렇지 않으면 reinstate가 실패하여 RMAN duplicate로 standby를 재구축해야 한다. 페일오버 후 이전 primary에 기록된 데이터는 영구적으로 손실된다.