Soporte de failover para Oracle GoldenGate con PostgreSQL 17 y superior

Obtenga información sobre la configuración del failover para Oracle GoldenGate con PostgreSQL 17 y versiones posteriores.

PostgreSQL 17 ha introducido el soporte para la sincronización automática de ranuras de replicación lógicas entre los servidores principal y en espera. Cuando se utiliza con Oracle GoldenGate, esta capacidad permite un failover sin problemas de los procesos de extracción sin necesidad de volver a crear manualmente los espacios de replicación.

Esta función garantiza la replicación continua de datos con una interrupción mínima durante los eventos de failover.

Requisitos para activar el soporte de failover para Oracle GoldenGate para PostgreSQL 17 y superior

Antes de activar la compatibilidad con failover, asegúrese de lo siguiente:

Configuración del soporte de failover

Configure el soporte de failover realizando las siguientes tareas en los servidores principal y en espera PostgreSQL y, a continuación, en el lado de extracción de Oracle GoldenGate.

  1. Configure los servidores principal y en espera PostgreSQL.

    En el servidor principal: actualice los parámetros de configuración PostgreSQL:

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

    En el servidor en espera

    Actualice los parámetros para la configuración:

    hot_standby_feedback = on
    primary_slot_name = '*primary_physical_slot*'
  2. Después de actualizar la configuración, reinicie PostgreSQL en los servidores principal y en espera.

  3. Active el soporte de ranuras de failover al registrar el proceso de extracción.

    Uso de la interfaz web de Oracle GoldenGate

    Al crear el Extract para PostgreSQL, active el conmutador Ranuras de replicación de failover:

    Active el conmutador de conmutación de ranuras de replicación de failover.

    Uso de AdminClient

    REGISTER EXTRACT *extract_name* FAILOVERSLOT;

    Uso de la API de REST

    POST /services/v2/extracts/AT
    {
        "credentials": {
            "alias": "fail1"
        },
        "registration": "default",
        "failoverSlot": true
    }
  4. Verifique la configuración en los servidores principal y en espera PostgreSQL:

    En el servidor principal: ejecute la siguiente consulta:

    SELECT slot_name, slot_type, failover
    FROM pg_replication_slots;

    La salida debe mostrar:

    • El tipo de espacio es logical

    • failover se define en true

    En el servidor en espera: ejecute la siguiente consulta:

    SELECT slot_name, restart_lsn
    FROM pg_replication_slots;

    La salida debe mostrar:

    • Existe la misma ranura en la base de datos en espera

    • Los valores de LSN están progresando

  5. Realice el failover realizando los siguientes pasos:

    1. Promocionar el servidor en espera a principal mediante el mecanismo de alta disponibilidad configurado.

    2. Actualice la configuración de Extract para conectarse a la nueva base de datos primaria.

    3. Inicie o reanude el proceso de extracción.

    La replicación continúa desde la última posición procesada sin necesidad de reinicialización.

  6. Supervise el estado de la ranura de replicación:

    SELECT slot_name, active, restart_lsn
    FROM pg_replication_slots;

    Verifique lo siguiente:

    • El espacio está activo

    • El reinicio de LSN está avanzando

    • Sin acumulación excesiva de WAL

  7. La eliminación de ranuras de replicación no utilizadas ayuda a evitar una retención excesiva de WAL y el uso excesivo del disco.

    SELECT pg_drop_replication_slot('*slot_name*');

Mejores prácticas para la configuración de soporte de failover

Para configurar el soporte de failover con Oracle GoldenGate Extract para PostgreSQL, tenga en cuenta las siguientes mejores prácticas:

Limitaciones

Directrices específicas de la nube