Amazon RDS for Oracle에서 OCI Object Storage로 데이터 복제

Oracle Cloud Infrastructure GoldenGate를 사용해 Amazon RDS for Oracle에서 OCI Object Storage로 데이터를 복제하는 방법을 확인해 보세요.

시작하기 전에

이 빠른 시작을 성공적으로 완료하려면 다음이 있어야 합니다.

  • Oracle Cloud 계정에 가입하거나 로그인합니다.
  • 소스 Amazon RDS for Oracle 인스턴스는 환경 설정에 설명되어 있습니다.

환경 설정: Amazon RDS for Oracle

Oracle 인스턴스용 Amazon RDS를 프로비전한 후 다음 단계에 따라 Oracle GoldenGate에서 사용할 소스 데이터베이스를 설정합니다.

  1. 소스 데이터베이스에서 보완 로깅을 설정합니다.
  2. ENABLE_GOLDENGATE_REPLICATION 초기화 매개변수를 true로 설정합니다.
  3. 소스 데이터베이스에서 아카이브를 활성화하고 아카이브된 리두 로그를 보존합니다.
  4. 소스 데이터베이스에 Oracle GoldenGate 사용자 계정을 생성합니다.
  5. 소스 데이터베이스에 대한 사용자 계정 권한을 부여합니다.
    GRANT CREATE SESSION, ALTER SESSION TO GGADMIN;
    GRANT RESOURCE TO GGADMIN;
    GRANT SELECT ANY DICTIONARY TO GGADMIN;
    GRANT FLASHBACK ANY TABLE TO GGADMIN;
    GRANT SELECT ANY TABLE TO GGADMIN;
    GRANT EXECUTE ON DBMS_FLASHBACK TO GGADMIN;
    GRANT SELECT ON SYS.V_$DATABASE TO GGADMIN;
    GRANT ALTER ANY TABLE TO GGADMIN;
    EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege (
    grantee                 => 'GGADMIN',
    privilege_type          => 'capture',
    grant_select_privileges => true,
    do_grants               => TRUE);
    
  6. 샘플 데이터베이스 스키마를 다운로드하고 압축을 풉니다.
  7. 소스 샘플 스키마 및 데이터를 로드합니다.
    1. SRC_OCIGGLL 사용자로 SQL Developer에서 Amazon RDS for Oracle 인스턴스에 연결합니다.
    2. OCIGGLL_OCIGGS_SETUP_USERS_ATP.sql에서 스크립트를 복사하여 SQL Worksheet에 붙여 넣습니다.
    3. 스크립트 실행을 누릅니다. 스크립트 출력 탭에 확인 메시지가 표시됩니다.
    4. SQL Worksheet를 지운 다음 OCIGGLL_OCIGGS_SRC_USER_SEED_DATA.sql에서 SQL 스크립트를 복사하여 붙여넣습니다.

      참고:

      스크립트를 성공적으로 실행하려면 SQL 도구에 대해 각 명령문을 별도로 실행해야 할 수도 있습니다.
    5. 테이블이 성공적으로 생성되었는지 확인하려면 SQL 창을 닫고 다시 여십시오. [네비게이터] 탭에서 SRC_OCIGGLL 스키마를 찾은 다음 해당 드롭다운 목록에서 테이블을 선택합니다.

작업 1: OCI GoldenGate 리소스 생성

  1. 소스 Amazon RDS for Oracle 인스턴스에 대한 Oracle 배치를 생성합니다.
  2. OCI Object Storage 버킷을 대상으로 빅데이터 배포를 생성합니다.
  3. 소스 Amazon RDS for Oracle 인스턴스에 대한 접속을 생성합니다.
  4. 대상 OCI Object Storage에 대한 접속을 생성합니다.
  5. Big Data 배치에 퍼블릭 끝점이 없는 경우 GoldenGate에 대한 접속을 생성하고 이 접속을 소스 Oracle 배치에 지정합니다.
  6. Amazon RDS for Oracle 접속을 소스 Oracle 배치에 지정합니다.
  7. 대상 Big Data 배치에 OCI 오브젝트 스토리지 접속을 지정합니다.
  8. 소스 Oracle 배치에 GoldenGate 접속을 지정합니다.

작업 2: 추출 추가 및 실행

  1. Deployments 페이지에서 소스 Amazon RDS for Oracle 배치를 선택합니다.
  2. 배포 세부정보 페이지에서 콘솔 실행을 누릅니다.
  3. 소스 배치의 관리자 사용자 이름 및 비밀번호로 로그인합니다.
  4. 거래 정보를 추가합니다.
  5. 추출 추가.

작업 3: Distribution Path 추가 및 실행

  1. GoldenGate 인증서 저장소를 사용하는 경우 대상 Big Data 배치에서 배포 경로에 대한 사용자를 생성하고, 그렇지 않은 경우 3단계로 건너뜁니다.
  2. 소스 ATP GoldenGate 배포 콘솔에서 1단계에서 생성한 사용자에 대한 경로 연결을 추가합니다.
    1. 소스 ATP GoldenGate 배치 콘솔에서 왼쪽 탐색에서 경로 접속을 누릅니다.
    2. 경로 연결 추가(더하기 아이콘)를 누른 후 다음을 완료합니다.
      1. 인증서 별칭GGSNetwork을 입력합니다.
      2. 사용자 ID에 1단계에서 만든 사용자의 이름을 입력합니다.
      3. 확인을 위해 사용자의 비밀번호를 두 번 입력합니다.
    3. 제출을 누릅니다.

      경로 연결이 경로 연결 목록에 나타납니다.

  3. 소스 ATP 배치 콘솔에서 다음 값을 사용하여 분배 경로 추가를 수행합니다.
    1. 소스 옵션 페이지에서 다음을 수행합니다.
      • 소스 추출의 경우 태스크 2에서 생성된 추출을 선택합니다.
      • Trail Name에 2자 이름(예: E1)을 입력합니다.
    2. 대상 옵션 페이지에서 다음을 수행합니다.
      • 대상 호스트에 대해 대상 배치의 호스트 도메인을 입력합니다.
      • 포트 번호에서 443을 입력합니다.
      • Trail Name에 2자 이름(예: E1)을 입력합니다.
      • 별칭에 2단계에서 생성한 인증서 별칭을 입력합니다.
  4. 대상 Big Data 배치 콘솔에서 Distribution Path의 결과로 생성된 Receiver Path를 검토합니다.
    1. 대상 Big Data 배치 콘솔에서 Receiver Service을 누릅니다.
    2. 경로 세부 정보를 검토합니다. 이 경로는 이전 단계에서 생성된 Distribution Path의 결과로 생성되었습니다.

작업 4: Replicat 추가 및 실행

  1. 대상 Big Data 배치 콘솔 탐색 메뉴에서 Replicats을 누릅니다.
  2. Replicats 페이지에서 Replicat 추가(더하기 아이콘)를 누른 후 다음과 같이 양식을 완성합니다.
    1. Replicat 정보 페이지에서 다음을 수행합니다.
      1. Replicat 유형에 대해 클래식 Replicat을 선택합니다.
      2. 프로세스 이름에서 REP과 같은 이름을 입력합니다.
    2. Replicat 옵션 페이지에서 다음을 수행합니다.
      1. Replicat 추적 이름에 2자 이름(예: E1)을 입력합니다.
      2. 대상에 대해 OCI Object Storage를 선택합니다.
    3. Parameter File 페이지에서 MAP *.*, TARGET *.*;를 다음으로 바꿉니다.
      MAP SRC_OCIGGLL.*, TARGET *.*;
    4. Properties File 페이지에서 필요에 따라 OCI Event Handler 속성을 구성합니다.
      필수 속성:
      • gg.eventhandler.oci.compartmentID: OCI Object Storage 버킷이 상주하는 컴파트먼트 OCID입니다.
      • gg.handler.oci.fileNameMappingTemplate: 템플리트 키워드를 사용하여 동적으로 파일 이름을 생성합니다.
      수정할 수 있는 등록 정보는 다음과 같습니다.
      • gg.handler.oci.format: 출력 형식 지정 방법을 선택합니다. 기본 설정은 json_row입니다. 사용 가능한 옵션은 다음과 같습니다.

        참고:

        OCI Object Storage에 대한 형식 지정 속성을 사용하려면 nameoci로 바꿉니다. 예를 들어, gg.handler.name.formatgg.handler.oci.format가 됩니다.
      • gg.handler.oci.inactivityRollInterval: GoldenGate는 파일을 생성하고 쓰기용으로 열린 상태로 유지합니다. 이 속성은 지정된 비활성 기간(수신 트랜잭션 없음) 후에 파일을 닫은 다음 OCI Object Storage로 로드합니다. 기본적으로 5초로 설정됩니다. 시간은 밀리초(밀리초), 초(초), 분(m) 또는 시간(h)으로 지정할 수 있습니다. 예: gg.handler.oci.inactivityRollInterval=10m.
      • gg.handler.oci.maxFileSize: 파일 작성기 처리기는 파일을 열고 메타 데이터 변경 사항이 없는 경우 최대 파일 크기에 도달할 때까지 열린 상태로 유지합니다. 기본적으로 최대 파일 크기는 1GB이지만 이 등록 정보를 사용하여 변경할 수 있습니다. 크기에 도달하면 파일이 닫히고 새 파일이 생성됩니다. 예: gg.handler.oci.maxFileSize=500m.
      • gg.handler.oci.rollOnShutdown: 기본값은 true입니다. true로 설정하면 Replicat 프로세스를 정지할 때 GoldenGate가 열린 파일을 종료합니다. 기본적으로 파일 작성기 처리기는 Replicat가 중지되고 Replicat가 다시 시작될 때 계속해서 동일한 파일에 쓰는 경우에도 파일을 열어 둡니다. 예: gg.handler.oci.rollOnShutdown=false
      • gg.handler.oci.fileRollInterval: 파일이 닫히고 새 파일로 롤오버되기 전에 파일을 열어 둘 시간을 지정합니다. 기본적으로 7분으로 설정되어 있습니다. 시간은 밀리초(밀리초), 초(초), 분(m) 또는 시간(h)으로 지정할 수 있습니다. 예: gg.handler.oci.fileRollInterval=10m.
      • gg.eventhandler.oci.bucketMappingTemplate: 오브젝트 스토리지 버킷 이름을 입력합니다.
    5. 생성 및 실행을 누릅니다.

작업 5: 복제 확인

소스 Amazon RDS for Oracle 인스턴스에 대한 몇 가지 업데이트를 수행하여 OCI Object Storage에 대한 복제를 확인합니다.
  1. SRC_OCIGGLL 사용자로 SQL Developer에서 Amazon RDS for Oracle 인스턴스에 연결합니다.
  2. 워크시트에 다음을 입력하고 스크립트 실행을 누릅니다.
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002);
  3. 소스 GoldenGate OCI GoldenGate 배치 콘솔에서 Extract 이름을 선택한 다음 통계를 누릅니다. SRC_OCIGGLL.SRC_CITY에 10개의 삽입이 있는지 확인합니다.
  4. 대상 Big Data OCI GoldenGate 배치 콘솔에서 Replicat 이름을 선택한 다음 통계를 누릅니다. SRC_OCIGGLL.SRC_CITY에 10개의 삽입이 있는지 확인합니다.

작업 6: 프로세스 모니터 및 유지 관리

  1. 성능 모니터.
  2. 추적 파일 관리.