Failover sonrası eski primary'yi standby olarak geri kazan (REINSTATE)
OracleData GuardKomut
# 1) Eski primary'yi MOUNT'a getir (sqlplus / as sysdba):
# SQL> STARTUP MOUNT;
# (RAC: srvctl start database -db <old_primary_db_unique_name> -startoption mount)
# 2) Yeni primary'ye bagli DGMGRL'den:
dgmgrl sys@<new_primary_db_unique_name>
REINSTATE DATABASE '<old_primary_db_unique_name>';
# 3) Dogrula:
SHOW CONFIGURATION;
SHOW DATABASE '<old_primary_db_unique_name>';Ne yapar?
Eski primary'yi flashback database ile failover SCN'inin öncesine geri sarar, physical standby'a dönüştürür ve yeni primary'den redo almaya başlatır; standby'ı sıfırdan kurmaya gerek kalmaz.
Ne zaman kullanılır?
Failover sonrasında eski primary sunucu/depolama tekrar erişilebilir olduğunda; FSFO otomatik failover'ından sonra (observer genellikle kendisi reinstate eder).
Dikkat
Eski primary'de failover'dan ÖNCE flashback açık olmalı ve flashback logları failover SCN'ini kapsamalı (db_flashback_retention_target, FRA boyutu); aksi halde reinstate başarısız olur ve standby RMAN duplicate ile yeniden kurulur. Eski primary'de failover sonrası yazılmış veriler kalıcı olarak kaybolur.
İlgili
- Data Guard broker yapılandırmasını ve veritabanı durumunu gör (DGMGRL)
- Primary/standby rolünü ve switchover hazırlığını SQL ile kontrol et
- Standby'da transport/apply lag, apply hızı ve Data Guard süreçlerini ölç
- Switchover/failover öncesi standby'ı broker ile doğrula (VALIDATE DATABASE)
- Planlı switchover yap (DGMGRL, veri kaybı olmadan rol değişimi)
- Primary kaybında failover yap (DGMGRL)