Configurare un database Cloud SQL per PostgreSQL

Le sezioni seguenti spiegano come configurare un database Cloud SQL per PostgreSQL.

Abilita la replica logica

  1. Vai a Cloud SQL nella Google Cloud console.

  2. Apri l'istanza Cloud SQL e fai clic su MODIFICA.

  3. Vai alla sezione Indicatori.

  4. Fai clic su AGGIUNGI FLAG.

  5. Scegli il flag cloudsql.logical_decoding dal menu a discesa.

  6. Imposta il valore del flag su on.

  7. Fai clic su SALVA per salvare le modifiche. Dovrai riavviare l'istanza per aggiornarla con le modifiche.

  8. Una volta riavviata l'istanza, verifica le modifiche in Flag di database nella pagina Panoramica.

Crea una pubblicazione e uno slot di replica

  1. Connettiti al database come utente con privilegi sufficienti per creare uno slot di replica. In caso contrario, esegui il seguente comando:

    ALTER USER USER_NAME WITH REPLICATION;
    

    Sostituisci quanto segue:

    • USER_NAME: il nome dell'utente a cui vuoi concedere i privilegi di replica.
  2. Crea una pubblicazione. Ti consigliamo di creare una pubblicazione solo per le tabelle che vuoi replicare. In questo modo, Datastream legge 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 pubblicazione. Dovrai fornire questo nome quando crei uno stream nella procedura guidata di creazione dei flussi Datastream.
    • SCHEMA: il nome dello schema che contiene la tabella.
    • TABLE: il nome della tabella da replicare.

    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;
    
  3. Crea uno slot di replica inserendo il seguente comando SQL:

    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 uno stream nella procedura guidata di creazione dei flussi Datastream.

Creare un utente Datastream

  1. Connettiti al database utilizzando un client PostgreSQL.

  2. Inserisci il seguente comando PostgreSQL:

    CREATE USER USER_NAME WITH REPLICATION LOGIN PASSWORD 'USER_PASSWORD';

    Sostituisci quanto segue:

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

    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.

Passaggi successivi