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
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
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
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 cometable_open_cacheetable_definition_cachein 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_open_cache
e 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_poolconkill_queryokill_connectnel valore del parametroaurora_oom_response. In caso contrario, il ridimensionamento del pool di buffer non avverrà, anche se si includetune_buffer_poolnel 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 memoriaperformance_schema è abilitato.
Per le metriche di Amazon CloudWatch relative a OOM, consulta Parametri a livello di istanza per Amazon Aurora. Per le variabili di stato globali relative a OOM, consulta Variabili di stato globali di Aurora MySQL.