Configura un database Cloud SQL per PostgreSQL

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

Abilita replica logica

  1. Vai a Cloud SQL nella console Google Cloud.

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

  3. Vai alla sezione Flag.

  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. Per aggiornarla con le modifiche, dovrai riavviare l'istanza.

  8. Una volta riavviata l'istanza, conferma 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 l'accesso i privilegi di replica.
  2. Creare una pubblicazione. Ti consigliamo di creare una pubblicazione solo per le tabelle che vuoi replicare. In questo modo Datastream può leggere 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 devi fornire questo nome quando crei un flusso in Datastream creazione guidata dello stream.
    • 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 comando SQL seguente:

    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.

Crea 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 per creare.
    • USER_PASSWORD: la password di accesso per Datastream l'utente 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