Salta al contenuto

Come posso ridurre al minimo i tempi di inattività e ottimizzare le prestazioni di un aggiornamento della versione principale di Amazon RDS per PostgreSQL?

3 minuti di lettura
0

Desidero ridurre al minimo i tempi di inattività e ottimizzare le prestazioni di un aggiornamento della versione principale del mio database Amazon Relational Database Service (Amazon RDS) per PostgreSQL.

Breve descrizione

Nota: gli aggiornamenti delle versioni principali potrebbero contenere modifiche al database che non sono compatibili con le applicazioni esistenti. Prima di eseguire l'aggiornamento, assicurati di testarlo accuratamente in un ambiente non di produzione. Per ulteriori informazioni, consulta Come eseguire l’aggiornamento a una versione principale per RDS per PostgreSQL.

Per aggiornare l'istanza database (DB), utilizza uno dei seguenti metodi:

  • Ripristino da snapshot
  • Aggiornamento manuale
  • Implementazione blu/verde
  • AWS Database Migration Service (AWS DMS)

Prerequisiti:

Risoluzione

Nota: se ricevi errori quando esegui i comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori per AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.

Ottimizza le prestazioni di aggiornamento

Per ridurre al minimo i potenziali problemi durante l'esecuzione della versione principale del motore, intraprendi le seguenti azioni:

Per identificare le transazioni che sono in esecuzione da più di 10 minuti, esegui questo comando:

SELECT * FROM pg_stat_activity
WHERE pid <> pg_backend_pid()
AND state in ('idle', 'idle in transaction', 'idle in transaction (aborted)', 'disabled','active')
AND state_change < current_timestamp - INTERVAL '10' MINUTE
AND usename != 'rdsadmin';

Se identifichi una transazione lenta, utilizza pg_cancel_backend o pg_terminate_backend per interromperla. Per ulteriori informazioni, consulta Server signaling functions (Funzioni di segnalazione del server) sul sito web PostgreSQL.

Aggiornamento con ripristino da snapshot

Crea uno snapshot del database dell'istanza database, aggiorna lo snapshot a una versione principale successiva e ripristinala su una nuova istanza database.

Nota: devi utilizzare un nome diverso per la nuova istanza database e l'applicazione deve essere arrestata durante il processo di aggiornamento. Inoltre, devi aggiornare gli endpoint dell'applicazione al termine dell'aggiornamento.

Aggiorna manualmente l'istanza database

Per aggiornare manualmente l'istanza database, consulta Aggiornamento manuale della versione del motore.

Nota: gli aggiornamenti manuali del database richiedono tempi di inattività. Per ridurre al minimo i tempi di inattività, utilizza un'implementazione blu/verde.

Utilizza un aggiornamento dell'implementazione blu/verde

Per creare un'implementazione blu/verde, consulta Creazione di un'implementazione blu/verde. Quando ti trovi in un ambiente verde, specifica una versione successiva del motore.

Per ulteriori informazioni sulle implementazioni blu/verdi, consulta Limitazioni e considerazioni per le implementazioni blu/verdi di Amazon RDS.

Utilizza AWS DMS per eseguire l'upgrade

Utilizza AWS Database Migration Service (AWS DMS) per eseguire la migrazione dei dati dall'istanza database corrente a una nuova istanza con la versione aggiornata. AWS DMS supporta l'acquisizione dei dati di modifica (CDC) per la replica continua.

Aggiorna la tabella pg_statistics

Dopo aver completato l'aggiornamento della versione principale del motore, esegui il comando ANALYZE VERBOSE; su tutti i database per aggiornare la tabella pg_statistics. Per ulteriori informazioni, consulta ANALYZE sul sito web PostgreSQL.

AWS UFFICIALEAggiornata 5 mesi fa