ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name[,tbl_name...]
Analisa e armazena a distribuição de chaves para a tabela.
Durante a análise a tabela é bloqueada com uma trava de
leitura. Isto funciona em tabelas MyISAM
e
BDB
.
Isto seria equivalente a executar myisamchk
-a
na tabela.
O MySQL utiliza a distribuição de chaves armazenadas para decidir em que ordem tabelas devem ser unidas quando alguém faz um join em alguma coisa diferente de uma constante.
O comando retorna uma tabela com as seguintes colunas:
Coluna | Valor |
Table | Nome da Tabela |
Op | Sempre analyze
|
Msg_type | Um dos seguintes: status , error ,
info ou warning
|
Msg_text | A mensagem |
Você pode verificar a distribuição de chaves armazenadas com
o comando SHOW INDEX
. See
Secção 4.6.8.1, “Recuperando Informações sobre Bancos de Dados, Tabelas, Colunas e
Índices”.
Se a tabela não foi alterada deste o último comando
ANALYZE TABLE
, a tabela não será analisada
novamente.
Antes do MySQL 4.1.1, o ANALYZE
comnado não
gravava no log binário. Desde o MySQL 4.1.1 eles são escritos
no log binário a menos que a palavra chave opcional
NO_WRITE_TO_BINLOG
(ou se alias
LOCAL
) seja usada.
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.