Para obter uma descrição de uma tabela ou estatísticas sobre ela, utilize os comandos mostrados abaixo, nós explicaremos algumas das informações em mais detalhes posteriormente:
            myisamchk -d nome_tabela Executa o
            myisamchk no ``modo descritivo'' para
            produzir uma descrição de sua tabela. Se você iniciar o
            servidor MySQL utilizando a opção
            --skip-locking,
            myisamchk pode relatar um erro para uma
            tabela que está sendo atualizada enquanto é executado.
            Entretanto, como o myisamchk não altera
            a tabela no modo de descrição, não existem riscos de
            destruição de dados.
          
            myisamchk -d -v nome_tabela Para produzir mais informações
            sobre o que myisamchk está fazendo,
            adicione -v para solicitar a execução
            em modo verbose.
          
myisamchk -eis nome_tabela Exibe somente as informações mais importantes de uma tabela. Ele é lento porque é necessário ler a tabela inteira.
            myisamchk -eiv nome_tabela Isto se parece com
            -eis, mas lhe diz o que está sendo
            feito.
          
        Exemplo da saída de myisamchk -d
MyISAM file:     company.MYI
Record format:   Fixed length
Data records:    1403698  Deleted blocks:         0
Recordlength:    226
table description:
Key Start Len Index   Type
1   2     8   unique  double
2   15    10  multip. text packed stripped
3   219   8   multip. double
4   63    10  multip. text packed stripped
5   167   2   multip. unsigned short
6   177   4   multip. unsigned long
7   155   4   multip. text
8   138   4   multip. unsigned long
9   177   4   multip. unsigned long
    193   1           text
        Exemplo da saída de myisamchk -d -v :
MyISAM file:         company
Record format:       Fixed length
File-version:        1
Creation time:       1999-10-30 12:12:51
Recover time:        1999-10-31 19:13:01
Status:              checked
Data records:           1403698  Deleted blocks:              0
Datafile parts:         1403698  Deleted data:                0
Datafilepointer (bytes):      3  Keyfile pointer (bytes):     3
Max datafile length: 3791650815  Max keyfile length: 4294967294
Recordlength:               226
table description:
Key Start Len Index   Type                  Rec/key     Root Blocksize
1   2     8   unique  double                      1 15845376      1024
2   15    10  multip. text packed stripped        2 25062400      1024
3   219   8   multip. double                     73 40907776      1024
4   63    10  multip. text packed stripped        5 48097280      1024
5   167   2   multip. unsigned short           4840 55200768      1024
6   177   4   multip. unsigned long            1346 65145856      1024
7   155   4   multip. text                     4995 75090944      1024
8   138   4   multip. unsigned long              87 85036032      1024
9   177   4   multip. unsigned long             178 96481280      1024
    193   1           text
        Exemplo da saída de myisamchk -eis:
Checking MyISAM file: company Key: 1: Keyblocks used: 97% Packed: 0% Max levels: 4 Key: 2: Keyblocks used: 98% Packed: 50% Max levels: 4 Key: 3: Keyblocks used: 97% Packed: 0% Max levels: 4 Key: 4: Keyblocks used: 99% Packed: 60% Max levels: 3 Key: 5: Keyblocks used: 99% Packed: 0% Max levels: 3 Key: 6: Keyblocks used: 99% Packed: 0% Max levels: 3 Key: 7: Keyblocks used: 99% Packed: 0% Max levels: 3 Key: 8: Keyblocks used: 99% Packed: 0% Max levels: 3 Key: 9: Keyblocks used: 98% Packed: 0% Max levels: 4 Total: Keyblocks used: 98% Packed: 17% Records: 1403698 M.recordlength: 226 Packed: 0% Recordspace used: 100% Empty space: 0% Blocks/Record: 1.00 Record blocks: 1403698 Delete blocks: 0 Recorddata: 317235748 Deleted data: 0 Lost space: 0 Linkdata: 0 User time 1626.51, System time 232.36 Maximum resident set size 0, Integral resident set size 0 Non physical pagefaults 0, Physical pagefaults 627, Swaps 0 Blocks in 0 out 0, Messages in 0 out 0, Signals 0 Voluntary context switches 639, Involuntary context switches 28966
        Exemplo da saída de myisamchk -eiv:
Checking MyISAM file: company Data records: 1403698 Deleted blocks: 0 - check file-size - check delete-chain block_size 1024: index 1: index 2: index 3: index 4: index 5: index 6: index 7: index 8: index 9: No recordlinks - check index reference - check data record references index: 1 Key: 1: Keyblocks used: 97% Packed: 0% Max levels: 4 - check data record references index: 2 Key: 2: Keyblocks used: 98% Packed: 50% Max levels: 4 - check data record references index: 3 Key: 3: Keyblocks used: 97% Packed: 0% Max levels: 4 - check data record references index: 4 Key: 4: Keyblocks used: 99% Packed: 60% Max levels: 3 - check data record references index: 5 Key: 5: Keyblocks used: 99% Packed: 0% Max levels: 3 - check data record references index: 6 Key: 6: Keyblocks used: 99% Packed: 0% Max levels: 3 - check data record references index: 7 Key: 7: Keyblocks used: 99% Packed: 0% Max levels: 3 - check data record references index: 8 Key: 8: Keyblocks used: 99% Packed: 0% Max levels: 3 - check data record references index: 9 Key: 9: Keyblocks used: 98% Packed: 0% Max levels: 4 Total: Keyblocks used: 9% Packed: 17% - check records and index references [LOTS OF ROW NUMBERS DELETED] Records: 1403698 M.recordlength: 226 Packed: 0% Recordspace used: 100% Empty space: 0% Blocks/Record: 1.00 Record blocks: 1403698 Delete blocks: 0 Recorddata: 317235748 Deleted data: 0 Lost space: 0 Linkdata: 0 User time 1639.63, System time 251.61 Maximum resident set size 0, Integral resident set size 0 Non physical pagefaults 0, Physical pagefaults 10580, Swaps 0 Blocks in 4 out 0, Messages in 0 out 0, Signals 0 Voluntary context switches 10604, Involuntary context switches 122798
Aqui estão os tamanhos dos arquivos de dados e índices para a tabela utilizada nos exemplos anteriores:
-rw-rw-r-- 1 monty tcx 317235748 Jan 12 17:30 company.MYD -rw-rw-r-- 1 davida tcx 96482304 Jan 12 18:35 company.MYM
        Explicações para os tipos de informações que o
        myisamchk produz são fornecidas abaixo. O
        ``keyfile'' é o arquivo de índices. ``Registro'' e ``linha''
        são sinônimos:
      
ISAM file Nome do arquivo (índice) ISAM.
Isam-version Versão do formato ISAM. Atualmente sempre 2.
Creation time Quando o arquivo de dados foi criado.
Recover time Quando foi a última vez que o arquivo de índices/dados foi reconstruído.
Data records Quantos registros existem na tabela.
Deleted blocks Quantos blocos apagados continuam alocando espaço. Você pode otimizar sua tabela para minimizar este espaço. See Secção 4.5.6.10, “Otimização de Tabelas”.
            Datafile: Parts Para formato de registros dinâmicos, isto
            indica quantos blocos de dados existem. Para uma tabela
            otimizada sem registros fragmentados, isto é o mesmo que
            Data records.
          
Deleted data Quantos bytes de dados deletados não recuperados existem. Você pode otimizar sua tabela para minimizar este espaço. See Secção 4.5.6.10, “Otimização de Tabelas”.
Data file pointer O tamanho do ponteiro do arquivo de dados, em bytes. Ele normalmente possui 2, 3, 4 ou 5 bytes. A maioria das tabelas trabalham com 2 bytes, mas isto ainda não pode ser controlado pelo MySQL ainda. Para tabelas fixas, isto é um endereço de registro. Para tabelas dinâmicas, isto é um endereço de byte.
Keyfile pointer O tamanho de um ponteiro de arquivo de índices, em bytes. Ele normalmente possui 1, 2 ou 3 bytes. A maioria das tabelas trabalham com 2 bytes, mas isto é calculado automaticamente pelo MySQL. Ele é sempre um endereço de bloco.
            Max datafile length Qual tamanho o arquivo de dados
            (arquivos .MYD) pode atingir, em bytes.
          
            Max keyfile length Qual tamanho o arquivo de índices
            (.MYI pode atingir, em bytes.
          
Recordlength Quanto espaço cada registro ocupa, em bytes.
            Record format O formato utilizado para armazenar as linhas
            da tabelas. Os exemplos anteriores abaixo utilizam
            Fixed length (tamanho fixo). Outros
            valores possíveis são
            Compressed(compactado) e
            Packed(empacotado).
          
table description Uma lista de todas as chaves na tabela. Para cada chave, alguma informação de baixo nível é apresentada:
                Key
              
O Número desta chave.
                Start
              
Onde, no registro, esta parte do índice inicia.
                Len
              
Qual o tamanho desta parte do índice. Para números empacotados, isto deve sempre ser o tamanho total da coluna. Para strings, deve ser mais curto que o tamanho total da coluna indexada, porque você pode indexar um prefixo de uma coluna string.
                Index
              
                unique ou multip.
                (multiplos). Indica se um valor pode ou não exisitir
                várias vezes neste índice.
              
                Type
              
                Que tipo de dados esta parte do índice tem. Isto é um
                tipo de dados ISAM com as opções
                packed, stripped
                ou empty.
              
                Root
              
Endereço do bloco de índice raiz.
                Blocksize
              
O tamanho de cada bloco de índice. O tamanho padrão é 1024, mas o valor pode ser alterado na compilação.
                Rec/key
              
                Este é um valor estatístico utilizado pelo otimizador.
                Ele diz quantos registros existem por valor para esta
                chave. Uma chave única sempre tem um valor de 1. Ele
                pode ser atualizado depois que uma tabela é carregada
                (ou muito alterada) com myisamchk -a.
                Se isto não for completamente atualizado, um valor
                padrão de 30 é fornecido.
              
No primeiro exemplo acima, a nona chave é uma chave multi partes com duas partes.
            Keyblocks used Qual o percentual de bloco de chaves são
            usados. Como a tabela usada nos exemplos foi reorganizada
            com myisamchk, os valores são muito
            altos (muito próximos do máximo teórico).
          
            Packed O MySQL tenta empacotar chaves com um sufixo comum.
            Isto pode ser usado somente para chaves
            CHAR/VARCHAR/DECIMAL.
            Para strings grandes como nomes, isto pode reduzir
            significativamente o espaço utilizado. No terceiro exemplo
            acima, a quarta chave possui 10 caracteres e uma redução
            de 60% no espaço é obtida.
          
Max levels Qual a profundidade da árvore-B para esta chave. Grandes tabelas com chaves longas resultam em valores altos.
Records Quantos registros existem na tabela.
M.recordlength A média de tamanho do registro. Para tabelas com registros de tamanho fixo, isto é o tamanho exato do registro.
            Packed O MySQL corta espaços do final de strings. O valor
            Packed indica o percentual de economia
            alcançado fazendo isto.
          
Recordspace used Qual percentual do arquivo de dados é usado.
Empty space Qual percetual do arquivo de dados não é usado.
            Blocks/Record Número médio de blocos por registro (isto
            é, de quantos links um registro fragmentado é composto).
            Sempre será 1 para tabelas de formato fixo. Este valor deve
            permanecer o mais próximo possível de 1.0. Se ele
            aumentar, você pode reorganizar a tabela com
            myisamchk. See
            Secção 4.5.6.10, “Otimização de Tabelas”.
          
Recordblocks Quantos blocos (links) são utilizados. Para formatos fixos, este é o mesmo que o número de registros.
Deleteblocks Quantos blocos (links) foram excluídos.
Recorddata Quantos bytes no arquivo de dados são usados.
Deleted data Quantos bytes no arquivo de dados foram apagados (sem uso).
Lost space Se um registro é atualizado para um tamanho menor, algum espaço é perdido. Isto é a soma de todas estas perdas, em bytes.
            Linkdata Quando o formato de tabela dinâmica é utilizado,
            fragmentos de registros são ligados com ponteiros (4 a 7
            bytes cada). Linkdata é a soma do
            montante de armazenamento utilizado por todos estes
            ponteiros.
          
        Se uma tabela foi compactada com myisampack,
        mysiamchk -d exibe informações adicionais
        sobre cada coluna da tabela. Veja Secção 4.8.4, “myisampack, O Gerador de Tabelas Compactadas de
        Somente Leitura do MySQL”,
        para um exemplo desta informação e uma descrição do que ela
        significa.
      
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.

