

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à.

# Risoluzione dei problemi di memoria insufficiente per i database Aurora MySQL
<a name="AuroraMySQLOOM"></a>

Il parametro a livello di istanza `aurora_oom_response` di Aurora MySQL può consentire all’istanza database di monitorare la memoria di sistema e stimare la memoria utilizzata da varie istruzioni e connessioni. Se il sistema esaurisce la memoria, può eseguire una serie di azioni per tentare di liberarla. L’obiettivo è quello di evitare il riavvio del database a causa di problemi di memoria insufficiente (OOM). Il parametro a livello di istanza acquisisce una stringa di azioni separate da virgola che un’istanza database esegue quando la memoria è insufficiente. Il parametro `aurora_oom_response` è supportato per Aurora MySQL versione 2 e 3.

Per il parametro `aurora_oom_response` è possibile utilizzare i seguenti valori e combinazioni di valori. Una stringa vuota indica che non viene intrapresa alcuna azione e di fatto disattiva la funzionalità, esponendo il database a riavvii OOM.
+ `decline`: rifiuta le nuove query quando l’istanza database ha poca memoria.
+ `kill_connect`: chiude le connessioni al database che consumano una grande quantità di memoria e termina le transazioni correnti e le istruzioni DDL (Data Definition Language). Questa risposta non è supportata per Aurora MySQL versione 2.

  Per ulteriori informazioni, consulta [KILL statement](https://dev.mysql.com/doc/refman/8.0/en/kill.html) nella documentazione di MySQL.
+ `kill_query`: termina le query in ordine discendente relativamente al consumo di memoria fino a che la memoria dell’istanza non supera la soglia minima. Le istruzioni DDL non vengono terminate.

  Per ulteriori informazioni, consulta [KILL statement](https://dev.mysql.com/doc/refman/8.0/en/kill.html) nella documentazione di MySQL.
+ `print`: stampa solo le query che consumano una grande quantità di memoria.
+ `tune`: ottimizza le cache delle tabelle interne per restituire un po’ di memoria al sistema. Aurora MySQL riduce la memoria utilizzata per le cache come `table_open_cache` e `table_definition_cache` in condizioni di memoria insufficiente. Eventualmente, Aurora MySQL riporta l’utilizzo della memoria alla normalità quando il sistema non è più in condizioni di memoria insufficiente.

  Per ulteriori informazioni, consulta [table\$1open\$1cache](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_open_cache) e [table\$1definition\$1cache](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_definition_cache) nella documentazione di MySQL.
+ `tune_buffer_pool`: riduce la dimensione del pool di buffer per liberare parte della memoria e renderla disponibile al server del database per l’elaborazione delle connessioni. Questa risposta è supportata per Aurora MySQL versione 3.06 e successive.

  È necessario associare `tune_buffer_pool` con `kill_query` o `kill_connect` nel valore del parametro `aurora_oom_response`. In caso contrario, il ridimensionamento del pool di buffer non avverrà, anche se si include `tune_buffer_pool` nel valore del parametro.

Nelle versioni di Aurora MySQL precedenti alla 3.06, per le classi di istanze database con memoria inferiore o uguale a 4 GiB, quando l’istanza è sotto pressione di memoria, le azioni predefinite includono `print`, `tune`, `decline` e `kill_query`. Per le classi di istanze database con memoria superiore a 4 GiB, il valore del parametro è vuoto per impostazione predefinita (disabilitato).

In Aurora MySQL versione 3.06 e successive, per le classi di istanze database con memoria inferiore o uguale a 4 GiB, Aurora MySQL chiude anche le connessioni che consumano più memoria (`kill_connect`). Per le classi di istanze database con memoria superiore a 4 GiB, il valore del parametro predefinito è `print`.

In Aurora MySQL versione 3.09 e successive, per le classi di istanze database con memoria superiore a 4 GiB, il valore del parametro predefinito è `print,decline,kill_connect`.

Se si verificano spesso problemi di memoria insufficiente, è possibile monitorare l’utilizzo della memoria tramite le [tabelle di riepilogo della memoria](https://dev.mysql.com/doc/refman/8.3/en/performance-schema-memory-summary-tables.html) quando `performance_schema` è abilitato.

Per le metriche di Amazon CloudWatch relative a OOM, consulta [Parametri a livello di istanza per Amazon Aurora](Aurora.AuroraMonitoring.Metrics.md#Aurora.AuroraMySQL.Monitoring.Metrics.instances). Per le variabili di stato globali relative a OOM, consulta [Variabili di stato globali di Aurora MySQL](AuroraMySQL.Reference.GlobalStatusVars.md).