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

RMAN DUPLICATE로 활성 데이터베이스에서 physical standby 생성

OracleRMAN

명령어

# Prerequisites: standby instance in NOMOUNT with a pfile containing only db_name,
# primary password file copied, static listener entries and tnsnames on both sides.
rman target sys@<primary_tns> auxiliary sys@<standby_tns>
RUN {
  ALLOCATE CHANNEL p1 DEVICE TYPE DISK;
  ALLOCATE CHANNEL p2 DEVICE TYPE DISK;
  ALLOCATE AUXILIARY CHANNEL s1 DEVICE TYPE DISK;
  ALLOCATE AUXILIARY CHANNEL s2 DEVICE TYPE DISK;
  DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE
    USING COMPRESSED BACKUPSET SECTION SIZE 32G
    DORECOVER
    SPFILE
      SET db_unique_name='<standby_db_unique_name>'
      SET control_files='+DATA','+FRA'
      SET db_create_file_dest='+DATA'
      SET db_recovery_file_dest='+FRA'
      SET fal_server='<primary_tns>'
      SET log_archive_dest_2=''
      SET dg_broker_start='FALSE'
    NOFILENAMECHECK;
}

하는 일

primary 데이터 파일을 네트워크를 통해 standby 서버로 복사하고(중간 백업 파일 없음), standby에 맞게 조정된 spfile을 만들며, DORECOVER로 사용 가능한 아카이브 로그를 적용한다.

사용 시점

새 Data Guard standby 구축 시 또는 reinstate할 수 없는 standby 재구축 시.

주의

primary에 네트워크 및 I/O 부하를 발생시킨다. 피크 시간에 실행하지 않거나 채널 수를 제한한다. NOFILENAMECHECK는 standby가 별도 서버에 있을 때만 안전하다. 같은 서버에서는 primary 파일을 덮어쓸 수 있다. 전후에 standby redo log(primary online redo와 같은 크기, thread당 한 그룹 추가)를 추가한 후 broker를 구성한다.

DBAtlas에서 열기 →

관련 항목