Tipos de Tabelas

No MySQL Versão 3.23.6, você pode escolher entre 3 formatos de tabelas básicos (ISAM, HEAP e MyISAM). Versões mais novas do MySQL suportam tipos de tabelas adicionais (InnoDB ou BDB), dependendo de como você o compila. Um banco de dados pode conter tabelas de diferentes tipos.

Ao criar uma nova tabela, você pode dizer ao MySQL que tipo de tabela criar. O tipo de tabela padrão é, normalmente, MyISAM.

MySQL sempre criará um arquivo .frm para guardar as definições de coluna e tabela. Os índices e dados da tabela serão armazenados em um ou mais arquivos, dependendo do tipo de tabela.

Se você tentar utilziar um tipo de tabela que não está ativa ou não foi compilada com o MySQL, ele irá criar uma tabela do tipo MyISAM. Este comportamento é conveniente quando você quer copiar tabelas entre servidores MySQL que suportam tipos de tabel;as diferentes. (Talvez o seu servidor master suporte mecanismos de armazenamento tarnsacionais para aumento de segurança, enquanto o servidor slave só utiliza mecanismos de aramazenamento não-transacionais para maior velocidade.)

Esta mudançaautomatica de tipos de tabela podem confuso para novos usuários MySQL. Planejamos arrumar isto introduzindo avisos no protocolo cliente/servidor na versão 4.1 e gerar um aviso quando uma tipo de tabela é automaticamente alterado.

Você pode converter tabelas entre tipos diferentes com a instrução ALTER TABLE.

Note que o MySQL suporta dois tipos diferentes de tabelas: tabelas seguras com transação (InnoDB and BDB) e tabelas não seguras com tarnsação HEAP, ISAM, MERGE, e MyISAM).

Vantagens de tabelas seguras com transação (TST):

  • Mais segura. Mesmo se o MySQL falhar ou se você tiver problemas com hardware, você pode ter os seus dados de volta, ou através de recuperação automatica ou de um backup + o log de transação.
  • Você pode combinar muitas instruções e aceitar todas de uma vez com o comando COMMIT.
  • Você pode executar um ROLLBACK para ignorar suas mudanças (se você não estiver rodando em modo auto-commit).
  • Se uma atualização falhar, todas as suas mudanças serão restauradas. (Com tabelas NTST todas as mudanças que tiverem sido feitas são permanentes).
  • Pode fornecer melhor concorrência se a tabela obter muitas atualizações concorrentes com leituras.

Note que para utilizar tabelas InnoDB você tem que usar pelo menos a opção de inicialização innodb_data_file_path.

Vantagens de tabelas não seguras com transação (NTST):

  • Muito mais rápida e não há nenhuma sobrecarga de transação.
  • Usará menos spaço em disco já que não há nenhuma sobrecarga de transação.
  • Usará menos memória para as atualizações.

Você pode combinar tabelas TST e NTST na mesma instrução para obter o melhor dos dois mundos.

- Tabelas MyISAM

- Tabelas MERGE

- Tabelas ISAM

- Tabelas HEAP

- Tabelas InnoDB

- Tabelas BDB ou BerkeleyDB

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s