Utilizzo dell’utility di caricamento dei dati di Aurora PostgreSQL Limitless Database - Amazon Aurora

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo dell’utility di caricamento dei dati di Aurora PostgreSQL Limitless Database

Aurora fornisce un’utilità per caricare direttamente i dati in Limitless Database da un cluster di database Aurora PostgreSQL o da un’istanza database RDS per PostgreSQL.

Per utilizzare l’utilità di caricamento dati, esegui i seguenti passaggi:

Limitazioni

L’utilità di caricamento dei dati presenta le seguenti limitazioni:

  • I seguenti tipi di dati non sono supportati: enum, ARRAY, BOX, CIRCLE, LINE, LSEG, PATH, PG_LSN, PG_SNAPSHOT, POLYGON, TSQUERY, TSVECTOR e TXID_SNAPSHOT.

  • Gli zeri iniziali (0) vengono rimossi dal tipo di dati VARBIT durante il caricamento.

  • La migrazione dei dati non riesce se nelle tabelle di destinazione sono presenti chiavi esterne.

  • Il caricamento dei dati dai cluster di database Multi-AZ RDS per PostgreSQL non è supportato.

Prerequisiti

L’utilità di caricamento dei dati presenta i seguenti prerequisiti:

  • Il database di origine utilizza Aurora PostgreSQL o RDS per PostgreSQL versione 11.x o superiore.

  • Il database di origine si trova nello stesso Account AWS e nella stessa Regione AWS del gruppo di shard del database di destinazione.

  • Il cluster di database o l’istanza database di origine si trova nello stato available.

  • Le tabelle nel database di origine e nel database di Limitless devono avere gli stessi nomi di tabella, nomi di colonna e tipi di dati di colonna.

  • Le tabelle di origine e di destinazione devono avere chiavi primarie che utilizzano le stesse colonne e lo stesso ordine delle colonne.

  • Devi disporre di un ambiente per la connessione a Limitless Database per eseguire i comandi di caricamento dei dati. I comandi disponibili sono i seguenti:

    • rds_aurora.limitless_data_load_start

    • rds_aurora.limitless_data_load_cancel

  • Per CDC:

    • Sia il database di origine che il gruppo di shard del database di destinazione devono utilizzare lo stesso gruppo di sottoreti di database, lo stesso gruppo di sicurezza VPC e la stessa porta di database. Queste configurazioni servono per stabilire connessioni di rete sia con il database di origine che con i router nel gruppo di shard del database.

    • Devi abilitare la replica logica nel database di origine. L’utente del database di origine deve disporre dei privilegi per leggere la replica logica.

Preparazione del database di origine

Per accedere al database di origine per il caricamento dei dati, devi permettere il traffico di rete in entrata. Esegui questa procedura.

Per consentire il traffico di rete verso il database di origine
  1. Accedi a Console di gestione AWS e apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Vai alla pagina Gruppi di sicurezza.

  3. Scegli l’ID gruppo di sicurezza per il gruppo di sicurezza utilizzato dall’istanza database e dal cluster di database di origine.

    Ad esempio, l’ID gruppo di sicurezza è sg-056a84f1712b77926.

  4. Nella scheda Regole in entrata:

    1. Sceglere Edit inbound rules (Modifica regole in entrata).

    2. Aggiungi una nuova regola in entrata per l’istanza database e il cluster di database di origine:

      • Intervallo porte: porta del database per il database di origine, in genere 5432

      • ID gruppo di sicurezza: sg-056a84f1712b77926 in questo esempio

      Aggiungi una regola in entrata per il database di origine.
  5. Nella scheda Regole in uscita:

    1. Scegli Edit outbound rules (Modifica regole in uscita).

    2. Aggiungi una nuova regola in uscita per l’istanza database o il cluster di database di origine:

      • Porta del database: All traffic (include le porte 0-65535)

      • ID gruppo di sicurezza: sg-056a84f1712b77926 in questo esempio

      Aggiungi una regola in uscita per il database di origine.
  6. Accedi alla Console di gestione AWS e apri la console Amazon VPC all'indirizzo https://console.aws.amazon.com/vpc/.

  7. Vai alla pagina Liste di controllo degli accessi di rete.

  8. Aggiungi la configurazione ACL di rete predefinita come indicato in ACL di rete predefinito.

Preparazione del database di destinazione

Segui le procedure descritte in Creazione di tabelle di Aurora PostgreSQL Limitless Database per creare le tabelle di destinazione nel gruppo di shard del database.

Le tabelle di destinazione devono avere gli stessi schemi, gli stessi nomi di tabella e le stesse chiavi primarie delle tabelle di origine.

Creazione delle credenziali di database

Devi creare utenti di database nei database di origine e di destinazione e concedere i privilegi necessari a tali utenti. Per ulteriori informazioni, consulta CREATE USER e GRANT nella documentazione di PostgreSQL.

Creazione delle credenziali del database di origine

L’utente del database di origine viene passato nel comando di avvio del caricamento. Questo utente deve disporre dei privilegi necessari per eseguire la replica dal database di origine.

  1. Utilizza l’utente master del database (o un altro utente con il ruolo rds_superuser) per creare un utente del database di origine con privilegi LOGIN.

    CREATE USER source_db_username WITH PASSWORD 'source_db_user_password';
  2. Autorizza il ruolo rds_superuser per l’utente del database di origine.

    GRANT rds_superuser to source_db_username;
  3. Se utilizzi la modalità full_load_and_cdc, concedi il ruolo rds_replication all’utente del database di origine. Il ruolo rds_replication fornisce le autorizzazioni per gestire gli slot logici e per eseguire lo streaming dei dati utilizzando gli slot logici.

    GRANT rds_replication to source_db_username;

Creazione delle credenziali del database di destinazione

L’utente del database di destinazione deve disporre dell’autorizzazione per scrivere nelle tabelle di destinazione del gruppo di shard del database.

  1. Utilizza l’utente master del database (o un altro utente con il ruolo rds_superuser) per creare un utente del database di destinazione con privilegi LOGIN.

    CREATE USER destination_db_username WITH PASSWORD 'destination_db_user_password';
  2. Autorizza il ruolo rds_superuser per l’utente del database di destinazione.

    GRANT rds_superuser to destination_db_username;