RMAN(Recovery Manager)을 사용하여 Instantiation

대상 Oracle AI Database를 인스턴스화하는 RMAN(Recovery Manager) 방법은 대규모 데이터 전송을 위한 더 빠른 성능을 제공하는 물리적 블록 기반 인스턴스화를 제공하는 데 적합합니다. RMAN 프로세스는 원본 데이터베이스의 백업을 복원하여 대상 데이터베이스를 생성합니다.

테라바이트 범위의 대용량 데이터베이스의 경우 논리적 Instantiation 방식은 시간이 많이 걸리고 비효율적일 수 있습니다. 이 경우 Oracle RMAN이 원본 데이터베이스의 물리적 복제본을 생성하는 데 선호되는 솔루션입니다.

다음 단계에서는 대상 Oracle AI Database에 대한 RMAN 기반 인스턴스화 중 수행되는 작업에 대해 간략하게 설명합니다. 1. 소스 데이터베이스의 백업을 사용합니다.

  1. 새 복제(복제) 데이터베이스로 백업을 복원합니다.

  2. 복제된 데이터베이스에서 Media Recovery를 수행하여 일관성 있는 상태로 전환합니다.

  3. 대상 환경의 특정 요구 사항에 맞게 복제된 데이터베이스를 구성하고 조정합니다.

Oracle GoldenGate에 대해 RMAN 복제를 사용할 때는 데이터 손실을 방지하고 원활한 통합을 보장하기 위해 복제 타이밍을 관리하는 것이 중요합니다. 핵심은 원본 데이터베이스와 대상 데이터베이스가 모두 동기화된 상태로 유지되도록 대상 데이터베이스가 일관성 있는 시점(또는 SCN)을 식별하는 것입니다.

이렇게 하려면 백업을 수행하기 전에 소스 데이터베이스에서 Oracle GoldenGate 추출 프로세스를 시작하십시오. Extract를 등록할 때보다 오래된 시간 기록이 있는 트랜잭션을 찾은 경우 해당 트랜잭션이 완료될 때까지 기다려야 합니다. 추출은 전체 트랜잭션만 처리하므로 중요합니다. 복제를 통해 대상 시스템을 설정한 후 DISTPATH를 사용하여 복제 변경사항을 대상 시스템으로 지정하고 Replicat 프로세스를 추가합니다. Replicat를 시작할 때는 Target Database가 Recovery된 SCN에서 정확히 시작해야 합니다.

다음 예제에서는 원본 데이터베이스의 백업을 사용하여 데이터베이스를 Cloing할 때 SCN을 사용하는 방법을 설명합니다.

원본 데이터베이스에서 오후 10시에 예약된 백업이 실행 중입니다. 백업에는 더 자주 백업되는 데이터베이스 파일과 아카이브 로그가 포함됩니다. 백업은 1420004711의 SCN으로 오후 10시 30분에 완료됩니다. 그런 다음 이 백업을 사용하여 새 Target Database를 복제(복원 및 Recovery)합니다. 파일 복사, 복원 및 복구에는 몇 시간이 걸리며 그 후에 새 대상 데이터베이스가 준비됩니다. 이 시점에서 소스 및 Target Database는 모두 다음 다이어그램에 나와 있는 것처럼 일관성이 있습니다. 소스 데이터베이스 백업은 SCN 값을 사용하여 복제됩니다.

시간이 경과하면 원본 데이터베이스에서 새 변경 사항이 계속 발생하며 해당 SCN이 증가합니다. 대상 데이터베이스를 동기화 상태로 유지하기 위해 Oracle GoldenGate의 추출 프로세스는 백업을 수행하기 전부터 변경 사항을 캡처합니다.

Replicat 프로세스가 즉시 시작되지는 않지만 STARTCSN(대상 데이터베이스가 복구된 SCN) 이전에 발생한 모든 변경사항은 무시됩니다. 그런 다음 Replicat는 변경 백로그를 적용하기 시작합니다. Replicat가 동기화되면 복제가 일반 실시간 단계로 전환됩니다.

RMAN을 사용하여 복제된 대상 데이터베이스를 설정하는 자세한 단계를 제공하는 Oracle AI Database Backup and Recovery User's Guide의 Duplicating Databases 항목을 참조하십시오.

RMAN 방식을 사용하는 Oracle에 대한 정확한 인스턴스화

Oracle GoldenGate를 사용하는 동안 Oracle AI Database에 대한 RMAN 인스턴스화를 설정하려면 다음 단계가 필요합니다. 1. 소스 및 대상 시스템 모두에 소프트웨어를 배치하여 Oracle GoldenGate를 설치하고 설정합니다. 구성하기 전에 모든 데이터베이스 필요 조건이 충족되었는지 확인하십시오. 여기에는 소스 데이터베이스에서 최소 보완 로깅을 사용으로 설정하고, ADD TRANDATA 또는 ADD SCHEMATRANDATA를 사용하여 복제된 테이블의 키 열이 기록되도록 하는 것이 포함됩니다.

  1. 소스 데이터베이스에서 Extract 및 DISTPATH 프로세스를 추가하고 구성합니다.

  2. 대상 데이터베이스에서 Replicat 프로세스를 추가하고 구성합니다.

  3. Extract 프로세스를 시작하고 Extract가 전체 트랜잭션만 캡처하므로 장기 실행 트랜잭션이 시작되기 전에 Extract가 실행을 시작하는지 확인하십시오.

  4. DISTPATH 프로세스를 시작합니다.

  5. Replicat 프로세스를 시작하지 마십시오. 대상 데이터베이스가 완전히 복구될 때까지 기다리십시오.

  6. RMAN을 사용하여 원본 데이터베이스의 백업을 수행합니다. 이 백업은 나중에 대상 데이터베이스를 생성하는 데 사용됩니다. 백업 파일을 대상 시스템으로 안전하게 전송해야 합니다.

    RMAN target /
    RMAN> BACKUP DATABASE PLUS ARCHIVELOG
  7. RMAN을 사용하여 원본 데이터베이스의 복제본을 생성하고 이름을 Target Database 이름으로 바꿉니다. 예를 들어, Target Database 이름이 DBSOUTH인 경우 원본 데이터베이스의 복제본 이름을 DBSOUTH로 바꿉니다. 두 데이터베이스가 모두 동기화된 정확한 시점을 표시하므로 이 프로세스 중에 SCN(시스템 변경 번호) 값을 기록해 두십시오. 다음 예에서는 이름이 DBSOUTH(대상 데이터베이스와 동일)인 DBNORTH 데이터베이스의 복제본 생성을 표시합니다.

    OS> RMAN target /
    
    RMAN> restore database preview summary
    >>> Recovery must be done beyond SCN 1420004711 to clear datafile fuzziness
    
    OS> target sys/tiger99_RR@dbnorth
    
    RMAN> connect auxiliary
    RMAN> duplicate target database to DBSOUTH nofilenamecheck until SCN 1420004711;
  8. DBSOUTH 데이터베이스에서 Replicat 프로세스를 시작하여 RMAN을 사용하여 복구된 데이터베이스와 정확히 동일한 SCN에서 시작하는지 확인합니다.

    ATSCN 옵션을 사용하여 복제 중 데이터 간격이 없는지 확인합니다.

    OGG http://www.example.com:12000 depl_south> START REPLICAT REPS, ATCSN 1420004711

다음 다이어그램은 이러한 단계를 보여줍니다. Oracle GoldenGate Extract를 사용하여 소스 데이터베이스에서 복제를 계속하는 동안 RMAN을 사용하여 대상 데이터베이스 인스턴스화