Supporto del failover per Oracle GoldenGate con PostgreSQL 17 e versioni successive

Informazioni sulla configurazione del failover per Oracle GoldenGate con PostgreSQL 17 e versioni successive.

PostgreSQL 17 ha introdotto il supporto per la sincronizzazione automatica degli slot di replica logica tra i server primari e in standby. Se utilizzata con Oracle GoldenGate, questa funzionalità consente il failover dei processi Extract senza richiedere la ricreazione manuale degli slot di replica.

Questa funzione garantisce la replica continua dei dati con interruzioni minime durante gli eventi di failover.

Prerequisiti per l'abilitazione del supporto di failover per Oracle GoldenGate per PostgreSQL 17 e versioni successive

Prima di abilitare il supporto per il failover, accertarsi che:

Configurare il supporto di failover

Configurare il supporto del failover eseguendo i task riportati di seguito sui server primario e in standby PostgreSQL e quindi sul lato Extract di Oracle GoldenGate.

  1. Configurare i server primari e in standby PostgreSQL.

    Sul server primario: aggiornare i parametri di configurazione PostgreSQL.

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

    Sul server in standby

    Aggiornare i parametri della configurazione:

    hot_standby_feedback = on
    primary_slot_name = '*primary_physical_slot*'
  2. Dopo aver aggiornato la configurazione, riavviare PostgreSQL sui server primario e in standby.

  3. Abilita il supporto dello slot di failover durante la registrazione del processo Extract.

    Uso dell'interfaccia Web Oracle GoldenGate

    Durante la creazione di Extract for PostgreSQL, abilitare lo switch di attivazione/disattivazione degli slot di replica failover:

    Abilitare lo switch di attivazione/disattivazione degli slot di replica failover.

    Utilizzo di AdminClient

    REGISTER EXTRACT *extract_name* FAILOVERSLOT;

    Utilizzo dell'API REST

    POST /services/v2/extracts/AT
    {
        "credentials": {
            "alias": "fail1"
        },
        "registration": "default",
        "failoverSlot": true
    }
  4. Verificare la configurazione sui server primario e in standby PostgreSQL:

    Sul server primario: eseguire la query seguente:

    SELECT slot_name, slot_type, failover
    FROM pg_replication_slots;

    L'output dovrebbe mostrare:

    • Il tipo di slot è logical

    • failover è impostato su true

    Sul server in standby: eseguire la query seguente:

    SELECT slot_name, restart_lsn
    FROM pg_replication_slots;

    L'output dovrebbe mostrare:

    • Lo stesso slot esiste in standby

    • Valori LSN in corso

  5. Eseguire il failover effettuando le operazioni riportate di seguito.

    1. Promuovi il server in standby a primario utilizzando il meccanismo High Availability configurato.

    2. Aggiornare la configurazione Extract per connettersi al nuovo database primario.

    3. Avviare o riprendere il processo di estrazione.

    La replica continua dall'ultima posizione elaborata senza richiedere la reinizializzazione.

  6. Monitorare lo stato dello slot di replica:

    SELECT slot_name, active, restart_lsn
    FROM pg_replication_slots;

    Verificare quanto riportato di seguito.

    • Slot attivo

    • Riavvia LSN in corso

    • Nessun accumulo di WAL eccessivo

  7. La rimozione degli slot di replica inutilizzati impedisce un'eccessiva conservazione WAL e un uso eccessivo del disco.

    SELECT pg_drop_replication_slot('*slot_name*');

Procedure ottimali per la configurazione del supporto del failover

Per configurare il supporto del failover con Oracle GoldenGate Extract for PostgreSQL, prendere in considerazione le procedure ottimali riportate di seguito.

Limitazioni

Linee guida specifiche per il cloud