Tabelas InnoDB não suportam índices fulltext.
No Windows o InnoDB armazena os nomes de banco de dados e tabelas internamente sempre em letras minúsculas. Para mover bancos de dados em um formato binário do Unix para o Windows ou do Windows para o Unix você deve ter todas os nomes de tabelas e banco de dados em letras minúscula.
Aviso:
NÃO converta o sistema de
tabelas MySQL de MyISAM PARA InnoDB! Isto não é suportado;
se você fizer isto o MySQL não reiniciará até que você
restaure o sistema de tabelas antigo de um backup ou os
regenere com o script mysql_install_db
.
SHOW TABLE STATUS
não dá estatísticas
exatas sobre tabelas InnoDB, exceto sobre o tamanho físico
reservado pela tabela. O contador de linha é apenas uma
estimativa rude usada na otimização SQL.
Se você tentar criar um índice único em um prefixo de coluna você obterá um erro.
CREATE TABLE T (A CHAR(20), B INT, UNIQUE (A(5))) TYPE = InnoDB;
Se você criar um índice que não seja único em um prefixo de uma coluna, o InnoDB criará um índice sobre toda a coluna.
INSERT DELAYED
não é suportado por
tabelas InnoDB.
As operações LOCK TABLES
do MySQL não
tem conhecimento dos bloqueios de resistro do
InnoDBconfigurados em instruções SQL completadas: isto
significa que você pode conseguir um bloqueio de tabela
mesmo se já existir transações de outros usuários que
tiverem bloqueios de registros na mesma tabela. Assim suas
operações sobre a tabela poder ter que esperar se eles
colidirem com essas travas de outros usuários. Também pode
ocorrer um deadlock. No entanto isto não tarz perigo a
instegridade da transação, pois o bloqueio de registro
definido pelo InnoDB sempre cuidará da integridade. Um
bloqueio de tabela também previne que outras transações
adquiram mais bloqueios de registros (em um modo de bloqueio
conflitante) na tabela.
Uma tabela não pode ter mais de 1000 colunas.
DELETE FROM TABLE
não gera a tabela
novamente, mas, ao invés diato, deleta todas as linhas, uma
a uma, o que não é rápido. Em versões futuras do MySQL
você poderá usar TRUNCATE
que é mais
rápido.
O tamanho de página padrão utilizado no InnoDB é 16KB. Recompilando o código pode se configurá-la com 8 KB a 64 KB. O tamanho máximo de um registro é menos da metade da página de banco de dados nas versões anteriores a 3.23.40 do InnoDB. A partir da distribuição fonte da versão 3.23.41 colunas BLOB e TEXT podem ter até 4 GB e o tamanho total do registro também devem ser menores que 4GB. O InnoDB não armazena campos cjo tamanho é menor que 128 bytes em páginas separadas. Depois do InnoDB modificar o registro armazenando campos grandes em páginas separadas, o tamanho restante da linha deve ser menor que metade da página de banco de dados. O tamanho máximo da chave é de 7000 bytes.
Em alguns sistemas operacionais os arquivos de dados devem ser menores que 2 GB. O tamanho combinado dos arquivos de log devem ser menores que 4GB.
O tamanho máximo do tablespace é 4 bilhões de páginas de banco de dados. Este também é o tamanho máximo da tabela. O tamanho mínimo do tabelspace é de 10 MB.
Quando você reinicia o servidor MySQL, o InnoDB pode
reutilizar um valor antigo para uma coluna
AUTO_INCREMENT
.
Você não pode definir o primeiro valor de uma coluna
AUTO_INCREMENT
no InnoDB com
CREATE TABLE ... AUTO_INCREMENT=...
(ou
ALTER TABLE ...
). Para definir este valor
insira uma linha com o valor de menos e delete esta linha.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.