

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

# Problemi e limitazioni note per RDS per MariaDB
<a name="CHAP_MariaDB.Limitations"></a>

I seguenti elementi sono problemi e limitazioni noti quando si utilizza RDS per MariaDB.

**Nota**  
L'elenco non è completo.

**Topics**
+ [Limiti delle dimensioni dei file MariaDB in Amazon RDS](#RDS_Limits.FileSize.MariaDB)
+ [Parola riservata InnoDB](#MariaDB.Concepts.InnodbDatabaseName)
+ [Porte personalizzate](#MariaDB.Concepts.CustomPorts)
+ [Approfondimenti sulle prestazioni](#MariaDB.Concepts.PerformanceInsights)

## Limiti delle dimensioni dei file MariaDB in Amazon RDS
<a name="RDS_Limits.FileSize.MariaDB"></a>

Per le istanze database MariaDB, le dimensioni massime di una tabella è 16 TB quando si usano spazi tabelle file-per-table InnoDB. Questo valore limita anche il tablespace di sistema a una dimensione massima di 16 TB. Gli spazi tabelle file-per-table InnoDB (con ciascuna tabella nel relativo spazio tabelle) sono configurati per impostazione predefinita per le istanze database MariaDB. Questo limite non è correlato al limite massimo di archiviazione per le istanze database MariaDB. Per ulteriori informazioni sui limiti di archiviazione, consulta [Storage delle istanze di database Amazon RDS](CHAP_Storage.md).

Ci sono vantaggi e svantaggi nell'utilizzare i tablespaces file-per-table InnoDB, a seconda dell'applicazione. Per stabilire l'approccio migliore per l'applicazione, consulta [File-Per-Table Tablespaces](https://dev.mysql.com/doc/refman/5.7/en/innodb-file-per-table-tablespaces.html) nella documentazione MySQL.

Non è consigliabile consentire alle tabelle di crescere fino alla dimensione massima del file. In generale, una pratica migliore consiste nel partizionare i dati in tabelle più piccole, che possano migliorare le prestazioni e i tempi di ripristino.

Un'opzione che è possibile utilizzare per suddividere una tabella di grandi dimensioni in tabelle più piccole è rappresentata dal partizionamento. Il *partizionamento* distribuisce parti della tabella di grandi dimensioni in file separati in base alle regole specificate. Ad esempio, se si archiviano le transazioni per data, è possibile creare regole di partizionamento che distribuiscono le transazioni meno recenti in file separati mediante il partizionamento. Quindi, periodicamente, è possibile archiviare i dati storici della transazione che non devono essere prontamente disponibili per l'applicazione. Per ulteriori informazioni, consulta [Partitioning](https://dev.mysql.com/doc/refman/5.7/en/partitioning.html) nella documentazione MySQL.

**Determinazione della dimensione di tutti gli spazi tabella InnoDB**
+ Utilizza il seguente comando SQL per stabilire se qualche tabella supera le dimensioni consentite e può essere scelta per il partizionamento. 
**Nota**  
Per MariaDB 10.6 e versioni successive, questa query restituisce anche la dimensione dello spazio tabella del sistema InnoDB.   
Per le versioni di MariaDB precedenti alla 10.6, non è possibile determinare la dimensione dello spazio tabella del sistema InnoDB mediante query sulle tabelle di sistema. Consigliamo di eseguire l'aggiornamento a una versione più recente.

  ```
  1. SELECT SPACE,NAME,ROUND((ALLOCATED_SIZE/1024/1024/1024), 2) 
  2. as "Tablespace Size (GB)"  
  3. FROM information_schema.INNODB_SYS_TABLESPACES ORDER BY 3 DESC;
  ```

**Determinazione della dimensione delle tabelle utente non InnoDB**
+ Utilizza il seguente comando SQL per stabilire se qualche tabella utente non InnoDB ha dimensioni eccessive.

  ```
  SELECT TABLE_SCHEMA, TABLE_NAME, round(((DATA_LENGTH + INDEX_LENGTH+DATA_FREE)
  / 1024 / 1024/ 1024), 2) As "Approximate size (GB)" FROM information_schema.TABLES
  WHERE TABLE_SCHEMA NOT IN ('mysql', 'information_schema', 'performance_schema')
  and ENGINE<>'InnoDB';
  ```

**Per abilitare gli spazi tabelle file-per-table InnoDB**
+ Imposta il parametro `innodb_file_per_table` su `1` nel gruppo di parametri per l'istanza database.

**Per disabilitare gli spazi tabelle file-per-table InnoDB**
+ Imposta il parametro `innodb_file_per_table` su `0` nel gruppo di parametri per l'istanza database.

Per informazioni sull'aggiornamento di un gruppo di parametri database, consulta [Gruppi di parametri per Amazon RDS](USER_WorkingWithParamGroups.md).

Una volta abilitati o disabilitati gli spazi tabelle file-per-table InnoDB, puoi eseguire il comando `ALTER TABLE`. È possibile utilizzare questo comando per spostare una tabella dallo spazio tabelle globale al proprio spazio tabelle. Oppure è possibile spostare una tabella dal proprio spazio tabelle allo spazio tabelle globale. Di seguito è riportato un esempio.

```
1. ALTER TABLE table_name ENGINE=InnoDB, ALGORITHM=COPY; 
```

## Parola riservata InnoDB
<a name="MariaDB.Concepts.InnodbDatabaseName"></a>

`InnoDB` è una parola riservata per RDS for MariaDB. Non è possibile utilizzare questo nome per un database MariaDB.

## Porte personalizzate
<a name="MariaDB.Concepts.CustomPorts"></a>

Amazon RDS blocca le connessioni alla porta personalizzata 33060 per il motore MariaDB. Scegli una porta diversa per il motore MariaDB.

## Approfondimenti sulle prestazioni
<a name="MariaDB.Concepts.PerformanceInsights"></a>

I contatori InnoDB non sono visibili in Approfondimenti sulle prestazioni di Amazon RDS per MariaDB versione 10.11 perché la community MariaDB non li supporta più. 