Configura un database Amazon Aurora PostgreSQL

Le sezioni seguenti descrivono come configurare un database Amazon Aurora PostgreSQL.

Crea un gruppo di parametri

  1. Avvia la dashboard di Amazon RDS.
  2. Nel riquadro di navigazione a scomparsa, fai clic su Gruppi di parametri e poi su Crea gruppo di parametri. Viene visualizzata la pagina Crea gruppo di parametri.
  3. Utilizza la seguente tabella per compilare i campi di questa pagina, poi fai clic su Crea:
    CampoDescrizione
    Famiglia di gruppi di parametriSeleziona la famiglia che corrisponde al tuo database.
    TipoSeleziona Gruppo di parametri del cluster DB.
    Nome del gruppoIndica un nome per il gruppo di parametri.
    DescrizioneIndica una descrizione per il gruppo di parametri.
  4. Seleziona la casella di controllo a sinistra del gruppo di parametri appena creato e poi, in Azioni gruppo di parametri, fai clic su Modifica.
  5. Modifica il valore del parametro rds.logical_replication in 1.
  6. Fai clic su Salva modifiche.

Assegna il gruppo di parametri all'istanza di database

  1. Avvia la dashboard di Amazon RDS.
  2. Nel riquadro di navigazione a scomparsa, fai clic su Database e seleziona l'istanza di database.
  3. Dal menu Azioni istanza, seleziona Modifica. Viene visualizzata la finestra di dialogo Modifica istanza DB.
  4. Nella sezione Configurazione aggiuntiva, seleziona il gruppo di parametri del cluster di database che hai creato.
  5. Imposta il Periodo di conservazione dei backup su 7 giorni.
  6. Fai clic su Continua.
  7. Nel riquadro Pianificazione delle modifiche, seleziona l'opzione Applica immediatamente.

Riavvia l'istanza del database

  1. Avvia la dashboard di Amazon RDS.
  2. Nel riquadro di navigazione a scomparsa, fai clic su Database e seleziona l'istanza di database.
  3. Nel menu a discesa Azioni, seleziona Riavvia e poi Conferma.

Crea una pubblicazione e uno slot di replica

  1. Crea una pubblicazione per le modifiche nelle tabelle da replicare. Ti consigliamo di creare una pubblicazione solo per le tabelle che vuoi replicare. Questo consente a Datastream di leggere solo i dati pertinenti e riduce il carico sul database e su Datastream:

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

    Sostituisci quanto segue:

    • PUBLICATION_NAME: il nome della tua pubblicazione. Dovrai fornire questo nome quando crei un flusso nella procedura guidata di creazione dei flussi di Datastream.
    • SCHEMA: il nome dello schema che contiene la tabella.
    • TABLE: il nome della tabella che vuoi replicare.

    Puoi creare una pubblicazione per tutte le tabelle di uno schema. Questo approccio consente di replicare le modifiche per le tabelle nell'elenco specificato di schemi, incluse le tabelle che creerai in futuro:

    CREATE PUBLICATION PUBLICATION_NAME
    FOR TABLES IN SCHEMA1, SCHEMA2;

    Puoi anche creare una pubblicazione per tutte le tabelle del database. Tieni presente che questo approccio aumenta il carico sia sul database di origine sia su Datastream:

    CREATE PUBLICATION PUBLICATION_NAME FOR ALL TABLES;
    
  2. Crea uno slot di replica inserendo il seguente comando PostgreSQL:

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

    Sostituisci quanto segue:

    • REPLICATION_SLOT_NAME: il nome dello slot di replica. Dovrai fornire questo nome quando crei un flusso nella procedura guidata di creazione dei flussi di Datastream.

Crea un utente Datastream

  1. Per creare un utente Datastream, inserisci il comando PostgreSQL seguente:

    CREATE USER USER_NAME WITH ENCRYPTED PASSWORD 'USER_PASSWORD';

    Sostituisci quanto segue:

    • USER_NAME: il nome dell'utente Datastream che vuoi creare.
    • USER_PASSWORD: la password per l'utente Datastream che vuoi creare.
  2. Concedi i privilegi seguenti all'utente che hai creato:

    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;
    

    Sostituisci quanto segue:

    • SCHEMA_NAME: il nome dello schema a cui vuoi concedere i privilegi.
    • USER_NAME: l'utente a cui vuoi concedere i privilegi.