Índice
MyISAM     [+/-]MERGE     [+/-]ISAMHEAPInnoDB     [+/-]InnoDBBDB ou BerkeleyDB     [+/-]BDBBDBBDBBDB:BDB num futuro próximo:BDBBDBBDB
    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. See
    Secção 6.5.4, “Sintaxe 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. See
    Secção 7.5.3, “Opções de Inicialização do InnoDB”.
  
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.
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.

