

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

# Il database sta creando tabelle temporanee su disco
<a name="proactive-insights.temp-tables"></a>

L'utilizzo recente delle tabelle temporanee su disco è aumentato in modo significativo, fino a*percentage*. Il database crea circa tabelle *number* temporanee al secondo. Ciò potrebbe influire sulle prestazioni e aumentare le operazioni su disco*db-instance*.

**Topics**
+ [Versioni del motore supportate](#proactive-insights.temp-tables.context.supported)
+ [Contesto](#proactive-insights.temp-tables.context)
+ [Probabili cause di questo problema](#proactive-insights.temp-tables.causes)
+ [Azioni](#proactive-insights.temp-tables.actions)
+ [Metriche pertinenti](#proactive-insights.temp-tables.metrics)

## Versioni del motore supportate
<a name="proactive-insights.temp-tables.context.supported"></a>

Queste informazioni approfondite sono supportate per tutte le versioni di Aurora MySQL.

## Contesto
<a name="proactive-insights.temp-tables.context"></a>

A volte è necessario che il server MySQL crei una tabella temporanea interna durante l'elaborazione di una query. può contenere una tabella temporanea interna in memoria, dove può essere elaborata dal motore di archiviazione MEMORY o archiviata su disco TempTable da InnoDB. Per ulteriori informazioni, consulta [Uso della tabella temporanea interna in MySQL](https://dev.mysql.com/doc/refman/5.6/en/internal-temporary-tables.html) nel *Manuale di riferimento di MySQL*.

## Probabili cause di questo problema
<a name="proactive-insights.temp-tables.causes"></a>

Un aumento delle tabelle temporanee su disco indica l'uso di query complesse. Se la memoria configurata non è sufficiente per archiviare le tabelle temporanee in memoria, Aurora MySQL crea le tabelle su disco. Ciò può influire sulle prestazioni e aumentare le operazioni del disco.

## Azioni
<a name="proactive-insights.temp-tables.actions"></a>

Consigliamo azioni diverse a seconda delle cause degli approfondimenti.
+ Per versione 3, si consiglia di utilizzare il motore di archiviazione. TempTable 
+ Ottimizza le query in modo da restituire meno dati selezionando solo le colonne necessarie.

  Se attivi lo schema delle prestazioni con tutti gli strumenti `statement` abilitati e temporizzati, puoi eseguire la query `SYS.statements_with_temp_tables` per recuperare l'elenco delle query che utilizzano le tabelle temporanee. Per ulteriori informazioni, consulta [Prerequisiti per l'utilizzo dello schema sys](https://dev.mysql.com/doc/refman/8.0/en/sys-schema-prerequisites.html) nella documentazione di MySQL.
+ Prendi in considerazione l'indicizzazione delle colonne coinvolte nelle operazioni di ordinamento e raggruppamento.
+ Riscrivi le query per evitare le colonne `BLOB` e `TEXT`. Queste colonne utilizzano sempre il disco.
+ Ottimizza i parametri del database `tmp_table_size` e `max_heap_table_size`.

  Il valore predefinito di questi parametri è 16 MiB. Quando si utilizza il motore di archiviazione MEMORY per tabelle temporanee in memoria, la dimensione massima è definita dal valore `tmp_table_size` o `max_heap_table_size`, a seconda di quale sia il più piccolo. Quando viene raggiunta questa dimensione massima, MySQL converte automaticamente la tabella temporanea interna in memoria in una tabella temporanea interna di InnoDB su disco. Per ulteriori informazioni, consulta [Utilizzare il motore TempTable di storage su Amazon RDS for MySQL e Amazon Aurora MySQL](https://aws.amazon.com/blogs/database/use-the-temptable-storage-engine-on-amazon-rds-for-mysql-and-amazon-aurora-mysql/).
**Nota**  
Quando si creano in modo esplicito tabelle MEMORY con CREATE TABLE, solo la variabile `max_heap_table_size` determina la dimensione massima di una tabella. Inoltre, non è prevista la conversione in un formato su disco.

## Metriche pertinenti
<a name="proactive-insights.temp-tables.metrics"></a>

A questo approfondimento sono correlati i seguenti parametri di Approfondimenti sulle prestazioni:
+ Created\$1tmp\$1disk\$1tables
+ Created\$1tmp\$1tables

Per ulteriori informazioni, consulta [Created\$1tmp\$1disk\$1tables](https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html#statvar_Created_tmp_disk_tables) nella documentazione di MySQL.