PostgreSQL 17 이상의 Oracle GoldenGate에 대한 복구 지원

PostgreSQL 17 이상에서 Oracle GoldenGate에 대한 페일오버 구성에 대해 알아봅니다.

PostgreSQL 17에서는 기본 서버와 대기 서버 간에 논리적 복제 슬롯의 자동 동기화를 지원합니다. 이 기능을 Oracle GoldenGate와 함께 사용하면 복제 슬롯을 수동으로 재생성할 필요 없이 Extract 프로세스를 원활하게 페일오버할 수 있습니다.

이 기능은 페일오버 이벤트 중 중단을 최소화하면서 지속적인 데이터 복제를 보장합니다.

Oracle GoldenGate for PostgreSQL 17 이상에 대한 페일오버 지원을 사용으로 설정하기 위한 필수 조건

페일오버 지원을 사용으로 설정하기 전에 다음을 확인하십시오.

Failover 지원 구성

PostgreSQL 기본 및 대기 서버와 Oracle GoldenGate Extract 측에서 다음 작업을 수행하여 페일오버 지원을 구성합니다.

  1. PostgreSQL 기본 및 대기 서버를 구성합니다.

    기본 서버에서: PostgreSQL 구성 매개변수를 업데이트합니다.

    wal_level = logical
    max_replication_slots = *sufficient_value*
    sync_replication_slots = on
    synchronized_standby_slots = '*standby_slot_name*'

    대기 서버

    구성 매개변수를 업데이트합니다.

    hot_standby_feedback = on
    primary_slot_name = '*primary_physical_slot*'
  2. 구성을 업데이트한 후 기본 서버와 대기 서버 모두에서 PostgreSQL를 다시 시작합니다.

  3. Extract 프로세스를 등록하는 동안 페일오버 슬롯 지원을 사용으로 설정합니다.

    Oracle GoldenGate 웹 인터페이스 사용

    Extract for PostgreSQL를 만드는 동안 페일오버 복제 슬롯 토글 스위치를 사용으로 설정합니다.

    페일오버 복제 슬롯 토글 스위치를 사용으로 설정합니다.

    AdminClient 사용

    REGISTER EXTRACT *extract_name* FAILOVERSLOT;

    REST API 사용

    POST /services/v2/extracts/AT
    {
        "credentials": {
            "alias": "fail1"
        },
        "registration": "default",
        "failoverSlot": true
    }
  4. PostgreSQL 기본 및 대기 서버의 구성을 확인합니다.

    기본 서버: 다음 질의를 실행합니다.

    SELECT slot_name, slot_type, failover
    FROM pg_replication_slots;

    출력에 다음이 표시되어야 합니다.

    • 슬롯 유형은 logical입니다.

    • failover는 true로 설정됩니다.

    대기 서버: 다음 질의를 실행합니다.

    SELECT slot_name, restart_lsn
    FROM pg_replication_slots;

    출력에 다음이 표시되어야 합니다.

    • 동일한 슬롯이 대기 데이터베이스에 존재합니다.

    • LSN 값 진행 중

  5. 다음 단계를 수행하여 failover를 수행합니다.

    1. 구성된 고가용성 메커니즘을 사용하여 대기 서버를 기본 서버로 승격합니다.

    2. 새 기본 데이터베이스에 연결하도록 Extract 구성을 업데이트합니다.

    3. Extract 프로세스를 시작하거나 재개합니다.

    재초기화 없이 마지막으로 처리된 위치에서 복제가 계속됩니다.

  6. 복제 슬롯 상태 모니터:

    SELECT slot_name, active, restart_lsn
    FROM pg_replication_slots;

    다음 사항을 확인하십시오.

    • 슬롯이 활성 상태입니다.

    • LSN 재시작이 진행 중입니다.

    • 과도한 WAL 누적 없음

  7. 사용되지 않는 복제 슬롯을 제거하면 과도한 WAL 보존 및 디스크 사용이 방지됩니다.

    SELECT pg_drop_replication_slot('*slot_name*');

페일오버 지원 구성에 대한 모범 사례

PostgreSQL용 Oracle GoldenGate Extract로 페일오버 지원을 구성하려면 다음 모범 사례를 고려하십시오.

제한 사항

클라우드별 가이드라인