

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
<a name="aurora-postgresql-write-forwarding-understanding"></a>

Le seguenti sezioni spiegano come verificare se in un cluster di database è abilitato l’inoltro di scrittura locale, come visualizzare le considerazioni sulla compatibilità e come vedere i parametri configurabili e l’impostazione dell’autenticazione. Queste informazioni forniscono i dettagli per utilizzare in modo efficace la funzionalità di inoltro di scrittura locale 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 dell’abilitazione dell’inoltro di scrittura locale in un cluster di database
<a name="aurora-postgresql-write-forwarding-describing"></a>

Per scoprire se è possibile utilizzare l’inoltro di scrittura locale in un cluster di database, controllare se l’attributo `LocalWriteForwardingStatus` del cluster è impostato su `enabled`.

In Console di gestione AWS, nella scheda **Configurazione** della pagina dei dettagli del cluster, viene visualizzato lo stato **Abilitato** per **Inoltro di scrittura locale di replica di lettura**.

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

**Example**  

```
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 di scrittura locale è disabilitato.
+ `disabling`: l’inoltro di scrittura locale è in fase di disabilitazione.
+ `enabled`: l’inoltro di scrittura locale è abilitato.
+ `enabling`: l’inoltro di scrittura locale è in fase di abilitazione.
+ `null`: l’inoltro di scrittura locale non è disponibile per questo cluster di database.
+ `requested`: l’inoltro di scrittura locale è stato richiesto, ma non è ancora attivo.

## Impostazioni predefinite dei parametri per l’inoltro di scrittura
<a name="aurora-postgresql-write-forwarding-params"></a>

I gruppi di parametri del cluster Aurora contengono delle 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\$1write\$1forward.connect\$1timeout | Sessione | secondi | 30 | 0–2147483647 | 
| apg\$1write\$1forward.consistency\$1mode | Sessione | enum | Sessione | SESSION, EVENTUAL, GLOBAL, e OFF | 
| apg\$1write\$1forward.idle\$1in\$1transaction\$1session\$1timeout | Sessione | millisecondi | 86400000 | 0–2147483647 | 
| apg\$1write\$1forward.idle\$1session\$1timeout | Sessione | millisecondi | 300000 | 0–2147483647 | 
| apg\$1write\$1forward.max\$1forwarding\$1connections\$1percent | 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’impostazione `max_connections` per l’istanza database di scrittura. 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 database di scrittura quando l’inoltro di scrittura locale è abilitato nel cluster.

Utilizzare le seguenti impostazioni per controllare le richieste di inoltro di scrittura locale:
+ `apg_write_forward.consistency_mode`: un parametro a livello di sessione che controlla il grado di coerenza di lettura sulla 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 di scrittura locale nella sessione. Per ulteriori informazioni sui livelli di coerenza, consulta [Coerenza e isolamento per l’inoltro di scrittura locale in Aurora PostgreSQL](aurora-postgresql-write-forwarding-configuring.md#aurora-postgresql-write-forwarding-isolation). Questo parametro è rilevante solo nelle istanze di lettura con l’inoltro di scrittura locale abilitato.
+ `apg_write_forward.connect_timeout`: il numero massimo di secondi di attesa della replica di lettura per stabilire una connessione all’istanza database di scrittura prima di rinunciare. Il valore `0` indica un tempo di attesa infinito.
+ `apg_write_forward.idle_in_transaction_session_timeout`: numero di millisecondi per cui l’istanza database di scrittura resta in attesa di 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`: numero di millisecondi per cui l’istanza database di scrittura resta in attesa di 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.

## rdswriteforwarduser
<a name="aurora-postgresql-write-forwarding-rdswriteforwarduser"></a>

 `rdswriteforwarduser` è l’utente utilizzato per stabilire una connessione tra la replica di lettura e l’istanza database di scrittura. 

**Nota**  
`rdswriteforwarduser` eredita i privilegi CONNECT nei database dei clienti tramite il ruolo PUBLIC. Se i privilegi per il ruolo PUBLIC vengono revocati, saranno necessari privilegi GRANT CONNECT per i database a cui inoltrare le scritture. 