Configura una base de datos de PostgreSQL de Amazon Aurora

En las siguientes secciones, se explica cómo configurar una base de datos de PostgreSQL de Amazon Aurora.

Crea un grupo de parámetros

  1. Inicia el panel de Amazon RDS.
  2. En el panel lateral de navegación, haz clic en Grupos de parámetros y, luego, en Crear grupo de parámetros. Aparecerá la página Crear grupo de parámetros.
  3. Usa la siguiente tabla para completar los campos de esta página y, luego, haz clic en Crear:
    CampoDescripción
    Familia de grupos de parámetrosSelecciona la familia que coincide con tu base de datos.
    TipoSelecciona Grupo de parámetros del clúster de la base de datos.
    Nombre del grupoProporciona un nombre para el grupo de parámetros.
    DescripciónProporciona una descripción para el grupo de parámetros.
  4. Selecciona la casilla de verificación que se encuentra a la izquierda del grupo de parámetros recién creado y, en Acciones del grupo de parámetros, haz clic en Editar.
  5. Cambia el valor del parámetro rds.logical_replication a 1.
  6. Haz clic en Guardar cambios.

Asigna el grupo de parámetros a la instancia de la base de datos

  1. Inicia el panel de Amazon RDS.
  2. En el panel lateral de navegación, haz clic en Bases de datos y, luego, selecciona tu instancia de base de datos.
  3. En el menú Instance Actions, selecciona Modify. Aparecerá el cuadro de diálogo Modificar instancia de base de datos.
  4. En la sección Configuración adicional, selecciona el grupo de parámetros del clúster de la base de datos que creaste.
  5. Establece el Backup retention period en 7 días.
  6. Haz clic en Continuar.
  7. En el panel Scheduling of edits, selecciona la opción ApplyDe inmediato.

Reinicia la instancia de base de datos

  1. Inicia el panel de Amazon RDS.
  2. En el panel lateral de navegación, haz clic en Bases de datos y, luego, selecciona tu instancia de base de datos.
  3. En el menú desplegable Acciones, selecciona Reiniciar y, luego, Confirmar.

Crea una publicación y una ranura de replicación

  1. Crea una publicación para los cambios en las tablas que quieras replicar. Te recomendamos que crees una publicación solo para las tablas que quieres replicar. Esto permite que Datastream lea solo los datos relevantes y reduce la carga en la base de datos y Datastream:

    CREATE PUBLICATION PUBLICATION_NAME
    FOR TABLE SCHEMA1.TABLE1, SCHEMA2.TABLE2;

    Reemplaza lo siguiente:

    • PUBLICATION_NAME: Es el nombre de la publicación. Deberás proporcionar este nombre cuando crees una transmisión en el asistente de creación de flujos de Datastream.
    • SCHEMA: Es el nombre del esquema que contiene la tabla.
    • TABLE: Es el nombre de la tabla que deseas replicar.

    Puedes crear una publicación para todas las tablas de un esquema. Este enfoque te permite replicar los cambios de las tablas en la lista de esquemas especificada, incluidas las tablas que crees en el futuro:

    CREATE PUBLICATION PUBLICATION_NAME
    FOR TABLES IN SCHEMA1, SCHEMA2;

    También puedes crear una publicación para todas las tablas de tu base de datos. Ten en cuenta que este enfoque aumenta la carga en la base de datos de origen y en Datastream:

    CREATE PUBLICATION PUBLICATION_NAME FOR ALL TABLES;
    
  2. Ingresa el siguiente comando de PostgreSQL para crear una ranura de replicación:

    SELECT PG_CREATE_LOGICAL_REPLICATION_SLOT('REPLICATION_SLOT_NAME', 'pgoutput');

    Reemplaza lo siguiente:

    • REPLICATION_SLOT_NAME: Es el nombre de la ranura de replicación. Deberás proporcionar este nombre cuando crees una transmisión en el asistente de creación de flujos de Datastream.

Crea un usuario de Datastream

  1. Para crear un usuario de Datastream, ingresa el siguiente comando de PostgreSQL:

    CREATE USER USER_NAME WITH ENCRYPTED PASSWORD 'USER_PASSWORD';

    Reemplaza lo siguiente:

    • USER_NAME: Es el nombre del usuario de Datastream que deseas crear.
    • USER_PASSWORD: La contraseña del usuario de Datastream que deseas crear.
  2. Otorga los siguientes privilegios al usuario que creaste:

    GRANT RDS_REPLICATION TO USER_NAME;
    GRANT SELECT ON ALL TABLES IN SCHEMA SCHEMA_NAME TO USER_NAME;
    GRANT USAGE ON SCHEMA SCHEMA_NAME TO USER_NAME;
    ALTER DEFAULT PRIVILEGES IN SCHEMA SCHEMA_NAME
      GRANT SELECT ON TABLES TO USER_NAME;
    

    Reemplaza lo siguiente:

    • SCHEMA_NAME: Es el nombre del esquema al que deseas otorgar los privilegios.
    • USER_NAME: El usuario al que deseas otorgar los privilegios.