Utilizzo dell'inoltro di scrittura locale per Aurora PostgreSQL - 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'inoltro di scrittura locale per Aurora PostgreSQL

Utilizzando le seguenti sezioni, è possibile verificare se in un cluster di database è abilitato l'inoltro di scrittura locale, visualizzare le considerazioni sulla compatibilità e vedere i parametri configurabili e la configurazione dell'autenticazione. Queste informazioni forniscono i dettagli per utilizzare in modo efficace la funzionalità di inoltro locale della scrittura in Aurora PostgreSQL.

Nota

Quando un'istanza di scrittura in un cluster che utilizza l'inoltro di scrittura locale viene riavviata, le eventuali transazioni e query attive, inoltrate sulle istanze di lettura che utilizzano l'inoltro di scrittura locale vengono chiuse automaticamente. Dopo che l'istanza di scrittura sarà nuovamente disponibile, è possibile riprovare a eseguire queste transazioni.

Verifica se in un cluster DB è abilitato l'inoltro di scrittura locale

Per determinare se è possibile utilizzare l'inoltro di scrittura locale in un cluster DB, verificate che il cluster abbia l'attributo impostato su. LocalWriteForwardingStatus enabled

Nella AWS Management Console scheda Configurazione della pagina dei dettagli del cluster, viene visualizzato lo stato Abilitato per l'inoltro locale di lettura, replica e scrittura.

Per visualizzare lo stato dell'impostazione di inoltro locale della scrittura per tutti i cluster, esegui il comando seguente. AWS CLI

aws rds describe-db-clusters \ --query '*[].{DBClusterIdentifier:DBClusterIdentifier,LocalWriteForwardingStatus:LocalWriteForwardingStatus}' [ { "LocalWriteForwardingStatus": "enabled", "DBClusterIdentifier": "write-forwarding-test-cluster-1" }, { "LocalWriteForwardingStatus": "disabled", "DBClusterIdentifier": "write-forwarding-test-cluster-2" }, { "LocalWriteForwardingStatus": "requested", "DBClusterIdentifier": "test-global-cluster-2" }, { "LocalWriteForwardingStatus": "null", "DBClusterIdentifier": "aurora-postgresql-v2-cluster" } ]

Un cluster database può avere i seguenti valori per LocalWriteForwardingStatus:

  • disabled— L'inoltro locale delle scritture è disabilitato.

  • disabling— L'inoltro locale delle scritture è in fase di disabilitazione.

  • enabled— L'inoltro locale delle scritture è abilitato.

  • enabling— L'inoltro locale delle scritture è in fase di attivazione.

  • null— L'inoltro di scrittura locale non è disponibile per questo cluster DB.

  • requested— L'inoltro locale di scrittura è stato richiesto, ma non è ancora attivo.

Impostazioni predefinite dei parametri per l'inoltro della scrittura

I gruppi di parametri del cluster Aurora includono le impostazioni per la funzionalità di inoltro di scrittura locale. Poiché si tratta di parametri cluster, tutte le istanze database in ogni cluster hanno gli stessi valori per queste variabili. I dettagli su questi parametri sono riepilogati nella tabella seguente, con note di utilizzo dopo la tabella.

Parametro Ambito Tipo Valore predefinito Valori validi
apg_write_forward.connect_timeout Sessione secondi 30 0–2147483647
apg_write_forward.consistency_mode Sessione enum Sessione SESSION, EVENTUAL, GLOBAL, e OFF
apg_write_forward.idle_in_transaction_session_timeout Sessione millisecondi 86400000 0–2147483647
apg_write_forward.idle_session_timeout Sessione millisecondi 300000 0–2147483647
apg_write_forward.max_forwarding_connections_percent Globale int 25 1-100

Il parametro apg_write_forward.max_forwarding_connections_percent rappresenta il limite superiore degli slot di connessione al database che possono essere utilizzati per gestire le query inoltrate dalle istanze di lettura. Viene espresso come percentuale dell'max_connectionsimpostazione per l'istanza Writer DB. Ad esempio, se max_connections è 800 e apg_write_forward.max_forwarding_connections_percent è 10, allora l'istanza di scrittura consente un massimo di 80 sessioni inoltrate simultanee. Queste connessioni provengono dallo stesso pool di connessioni gestito dall'impostazione max_connections. Questa impostazione si applica solo all'istanza Writer DB quando nel cluster è abilitato l'inoltro di scrittura locale.

Utilizzate le seguenti impostazioni per controllare le richieste locali di inoltro di scrittura:

  • apg_write_forward.consistency_mode— Un parametro a livello di sessione che controlla il grado di coerenza di lettura su una replica di lettura. I valori validi sono SESSION, EVENTUAL, GLOBAL o OFF. Per impostazione predefinita, il valore è impostato su SESSION. L'impostazione del valore su OFF disabilita l'inoltro locale della scrittura nella sessione. Per ulteriori informazioni sui livelli di coerenza, consulta Coerenza e isolamento per l'inoltro di scrittura locale in Aurora Postgre SQL. Questo parametro è rilevante solo nelle istanze di lettura che hanno l'inoltro di scrittura locale abilitato.

  • apg_write_forward.connect_timeout— Il numero massimo di secondi di attesa della replica di lettura quando stabilisce una connessione all'istanza DB di Writer prima di rinunciare. Il valore 0 indica un tempo di attesa infinito.

  • apg_write_forward.idle_in_transaction_session_timeout— Il numero di millisecondi in cui l'istanza Writer DB attende l'attività su una connessione inoltrata da una replica di lettura con una transazione aperta prima di chiuderla. Se la sessione continua ad avere una transazione inattiva oltre questo periodo, Aurora la chiude. Il valore 0 disabilita il timeout.

  • apg_write_forward.idle_session_timeout— Il numero di millisecondi in cui l'istanza Writer DB attende l'attività su una connessione inoltrata da una replica di lettura prima di chiuderla. Se la sessione rimane inattiva oltre questo periodo, Aurora la chiude. Il valore 0 disabilita il timeout.

rdswriteforward_user

rdswriteforwarduserÈ un utente che useremo per stabilire una connessione tra la replica di lettura e l'istanza DB di scrittura.

Nota

rdswriteforwardusereredita i privilegi CONNECT nei database dei clienti tramite il ruolo PUBLIC. Se i privilegi per il ruolo PUBLIC vengono revocati, dovrai CONCEDERE i privilegi CONNECT per i database a cui devi inoltrare le scritture.