DBAtlas · 데이터베이스 운영 아틀라스

SQL로 primary/standby 역할 및 스위치오버 준비 상태 확인

OracleData Guard

명령어

SELECT name, db_unique_name, database_role, open_mode, protection_mode,
       switchover_status, force_logging, flashback_on, dataguard_broker
FROM   v$database;

-- State of redo destinations and gaps (on the primary):
SELECT dest_id, dest_name, status, type, database_mode,
       recovery_mode, gap_status, error
FROM   v$archive_dest_status
WHERE  status <> 'INACTIVE';

-- Missing archivelog range on the standby:
SELECT thread#, low_sequence#, high_sequence# FROM v$archive_gap;

하는 일

데이터베이스 역할, open mode, 보호 모드, switchover_status(TO STANDBY / TO PRIMARY / SESSIONS ACTIVE / NOT ALLOWED), FORCE LOGGING 및 flashback 상태, redo destination의 오류와 gap을 보여 준다.

사용 시점

스위치오버/페일오버 전 사전 점검, 새 standby 구축 후, broker를 사용하지 않는 환경의 기본 모니터링용.

주의

읽기 전용. FORCE_LOGGING=NO이면 NOLOGGING 작업이 standby에 손상 블록을 남긴다. Data Guard primary에서는 ALTER DATABASE FORCE LOGGING을 반드시 활성화한다. FLASHBACK_ON=NO이면 페일오버 후 이전 primary를 reinstate할 수 없어 재구축해야 한다.

DBAtlas에서 열기 →

관련 항목