Importazione di dati in SQL Postgre su Amazon RDS - Amazon Relational Database Service

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 SQL Postgre su Amazon RDS

Supponiamo che tu abbia già una SQL distribuzione Postgre che desideri trasferire su 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 strumenti nativi di migrazione del SQL database Postgre nelle seguenti condizioni:

  • 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, l'approccio migliore è eseguire una migrazione del AWS database utilizzando Database Migration Service (AWS DMS). AWS DMSpuò migrare i database senza tempi di inattività e, per molti motori di database, continuare la replica continua fino a quando non si è pronti a passare al database di destinazione. È possibile migrare allo stesso motore di database o a un motore di database diverso utilizzando. AWS DMS Se si esegue la migrazione a un motore di database diverso da quello del database di origine, è possibile utilizzare il AWS Schema Conversion Tool ()AWS SCT. Si utilizza AWS SCT per migrare oggetti dello schema che non sono stati migrati da. AWS DMS Per ulteriori informazioni su AWS DMS, consulta What is? 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

maintenance_work_mem

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 CREATE INDEX le istruzioni e ogni comando parallel può utilizzare questa quantità di memoria. Calcola il valore ottimale, per evitare di impostare un valore troppo alto ed esaurire la memoria.

max_wal_size

256 (per la versione 9.6), 4096 (per le versioni 10 e successive)

Dimensione massima per consentirgli di WAL crescere durante i checkpoint automatici. Aumentando questo parametro puoi aumentare il tempo necessario per il ripristino di caso di arresto anomalo. Questo parametro sostituisce Postgre checkpoint_segments 9.6 e versioni successive. SQL

Per la SQL versione 9.6 di Postgre, 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.

checkpoint_timeout

1800

Il valore di questa impostazione consente una rotazione meno frequente. WAL

synchronous_commit

Disattivata

Disabilita questa impostazione per velocizzare la scrittura. La disattivazione di questo parametro può aumentare il rischio di perdita di dati in caso di arresto anomalo del server (non spegnereFSYNC).

wal_buffers

8192

Questo valore è impostato in unità di 8 KB. Questo aiuta ancora una volta la velocità WAL di generazione

autovacuum

0

Disabilita il parametro Postgre SQL auto vacuum 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 SQL comando Postgre pg_dumpall richiede autorizzazioni super_user che non vengono concesse quando si crea un'istanza DB, quindi non può essere utilizzato per importare dati.