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à.
Importazione di dati in PostgreSQL su Amazon RDS
Si supponga di avere una distribuzione PostgreSQL esistente da spostare in Amazon RDS. La complessità dell'attività dipende dalle dimensioni del database e dal tipo di oggetti di database da trasferire. Pensa, ad esempio, a un database con diversi gigabyte di set di dati, trigger e stored procedure. Trasferire un database di questo tipo è più complicato che trasferire un semplice database con pochi megabyte di dati di test e senza trigger o stored procedure.
Ti consigliamo di utilizzare gli strumenti di migrazione dei database PostgreSQL nativi nei seguenti casi:
-
Hai una migrazione omogenea, dove effettui la migrazione da un database con lo stesso motore del database del database di destinazione.
-
Desideri migrare un intero database.
-
Gli strumenti nativi ti consentono di migrare il tuo sistema con tempi di inattività ridotti.
Nella maggior parte degli altri casi, eseguire una migrazione del database utilizzando AWS Database Migration Service (AWSDMS) è l'approccio migliore. AWS DMS è in grado di migrare i database senza tempi di inattività e, per molti motori di database, procede con la replica continua fino a quando non è tutto pronto per passare al database di destinazione. Puoi effettuare la migrazione allo stesso motore del database o a un motore del database diverso tramite AWS DMS. Se si esegue la migrazione a un motore del database diverso rispetto al database di origine, si può utilizzare AWS Schema Conversion Tool (AWS SCT). AWS SCT può essere utilizzato per eseguire la migrazione degli oggetti dello schema di cui non viene eseguita la migrazione con AWS DMS. Per ulteriori informazioni su AWS DMS, consulta Che cos'è AWS Database Migration Service?
Modifica il gruppo di parametri database per includere le seguenti impostazioni solo per la tua importazione. Per individuare le impostazioni più efficienti per le dimensioni della tua istanza database devi testare le impostazioni dei parametri. Dovrai inoltre ripristinare i valori di produzione per questi parametri al termine dell'impostazione.
Modifica i parametri dell'istanza database come segue:
-
Disabilita i backup delle istanze database (imposta backup_retention su 0).
-
Disabilita Multi-AZ.
Modifica il gruppo di parametri del database in modo da includere le seguenti impostazioni. Utilizza queste impostazioni soltanto quando importi i dati. Per individuare le impostazioni più efficienti per le dimensioni della tua istanza database devi testare le impostazioni dei parametri. Dovrai inoltre ripristinare i valori di produzione per questi parametri al termine dell'impostazione.
Parametro | Valori consigliati durante l'importazione | Descrizione |
---|---|---|
|
524288, 1048576, 2097152 o 4194304 (in KB). Queste impostazioni sono paragonabili a 512 MB, 1 GB, 2 GB e 4 GB. |
Il valore di questa impostazione dipende dalle dimensioni dell'host. Questo parametro viene utilizzato durante le istruzioni CREATE INDEX e ogni comando parallelo può utilizzare questa quantità di memoria. Calcola il valore ottimale, per evitare di impostare un valore troppo alto ed esaurire la memoria. |
|
256 (per la versione 9.6), 4096 (per le versioni 10 e successive) |
Dimensione massima per far crescere il WAL durante i checkpoint automatici. Aumentando questo parametro puoi aumentare il tempo necessario per il ripristino di caso di arresto anomalo. Questo parametro sostituisce Per PostgreSQL versione 9.6, questo valore è espresso in unità da 16 MB. Per le versioni successive, il valore è espresso in unità da 1 MB. Ad esempio, nella versione 9.6, 128 significa 128 blocchi ognuno con una dimensione di 16 MB. Nella versione 12.4, 2048 significa 2048 blocchi che hanno una dimensione di 1 MB. |
|
1800 |
Il valore per questa impostazione consente una rotazione WAL meno frequente. |
|
Disattivata |
Disabilita questa impostazione per velocizzare la scrittura. La disattivazione del parametro può aumentare il rischio di perdita di dati in caso di arresto anomalo del server (non disattivare FSYNC) |
|
8192 |
Questo valore è impostato in unità di 8 KB. Anche questo aiuta a velocizzare la generazione dei WAL. |
|
0 |
Disabilita il parametro di eliminazione automatica PostgreSQL durante il caricamento dei dati in modo che non utilizzi risorse. |
Utilizza i comandi pg_dump -Fc
(compresso) o pg_restore -j
(parallelo) con queste impostazioni.
Nota
Il comando PostgreSQL pg_dumpall
richiede autorizzazioni super_user che non vengono concesse quando crei un'istanza database, quindi non puoi utilizzarlo per importare i dati.