Limitações do RDS para MariaDB - Amazon Relational Database Service

Limitações do RDS para MariaDB

Veja a seguir importantes limitações de uso do RDS para MariaDB.

nota

Essa lista não é exaustiva.

Limites de tamanho de arquivo do MariaDB no Amazon RDS

Para instâncias de banco de dados do MariaDB, o tamanho máximo de uma tabela é 16 TB ao usar tablespaces de arquivo por tabela do InnoDB. Esse limite também restringe o espaço de tabela do sistema a um tamanho máximo de 16 TB. Os espaços de tabelas de arquivo por tabela do InnoDB (com cada tabela em seu próprio espaço de tabela) são definidos por padrão para instâncias de bancos de dados MariaDB. Esse limite não está relacionado ao limite máximo de armazenamento para instâncias de banco de dados do MariaDB. Para obter mais informações sobre limites de armazenamento, consulte Armazenamento de instâncias de banco de dados do Amazon RDS.

Existem vantagens e desvantagens na utilização de espaços de tabela de arquivo por tabela do InnoDB, dependendo do seu aplicativo. Para determinar a melhor abordagem para a aplicação, consulte File-per-table tablespaces na documentação do MySQL.

Não recomendamos permitir que as tabelas cresçam até o tamanho máximo do arquivo. Em geral, uma prática recomendada é particionar dados em tabelas menores, o que pode melhorar a performance e os tempos de recuperação.

Uma opção que você pode usar para dividir uma tabela grande em tabelas menores é o particionamento. O particionamento distribui partes da sua tabela grande em arquivos separados com base em regras que você especifica. Por exemplo, se você armazenar transações por data, poderá criar regras de particionamento que distribuem transações antigas em arquivos separados usando o particionamento. Em seguida, periodicamente, você pode arquivar os dados históricos de transações que não precisam estar prontamente disponíveis para o seu aplicativo. Para obter mais informações, consulte Partitioning na documentação do MySQL.

Para determinar o tamanho do arquivo de uma tabela

Use o seguinte comando SQL para determinar se algumas das suas tabelas são muito grandes e são candidatas para particionamento. Para atualizar as estatísticas de tabela, emita um comando ANALYZE TABLE em cada tabela. Para obter mais informações, consulte ANALYZE TABLE statement na documentação do MySQL.

SELECT TABLE_SCHEMA, TABLE_NAME, round(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024), 2) As "Approximate size (MB)", DATA_FREE FROM information_schema.TABLES WHERE TABLE_SCHEMA NOT IN ('mysql', 'information_schema', 'performance_schema');

Para habilitar espaços de tabela de arquivo por tabela do InnoDB

  • Para habilitar espaços de tabela de arquivo por tabela do InnoDB, defina o parâmetro innodb_file_per_table como 1 no grupo de parâmetros da instância de banco de dados.

Para desabilitar espaços de tabela de arquivo por tabela do InnoDB

  • Para desabilitar espaços de tabela de arquivo por tabela do InnoDB, defina o parâmetro innodb_file_per_table como 0 no grupo de parâmetros da instância de banco de dados.

Para obter informações sobre como atualizar um grupo de parâmetros, consulte Trabalhar com grupos de parâmetros.

Ao ativar ou desativar os espaços de tabela de arquivo por tabela do InnoDB, você pode emitir um comando ALTER TABLE. Você pode usar esse comando para mover uma tabela do espaço de tabela global para seu próprio espaço de tabela. Ou você pode mover uma tabela de seu próprio espaço de tabela para o espaço de tabela global. Veja um exemplo a seguir.

ALTER TABLE table_name ENGINE=InnoDB, ALGORITHM=COPY;

Palavra reservada InnoDB

InnoDB é uma palavra reservada ao RDS para MariaDB. Não é possível usar esse nome para um banco de dados do MariaDB.