Eu gostaria de executar um CHECK TABLE
em todas as minhas tabelas da linha de comando do MySQL.
Eu posso fazer isso para uma única tabela:
mysql> check table Restaurant;
+--------------------+-------+----------+----------+
| Table | Op | Msg_type | Msg_text |
+--------------------+-------+----------+----------+
| foodbox.Restaurant | check | status | OK |
+--------------------+-------+----------+----------+
1 row in set (0.02 sec)
Existe um comando equivalente que verificaria todas as tabelas no banco de dados atual ?
Você pode simplificar sua vida com um script de shell. Aqui está um que criei para Linux, é baseado no aplicativo mysqlcheck
Este script verificará todas as tabelas em todos os bancos de dados, exceto mysql e information_schema
Salve o arquivo
Em seguida, execute-o
Para o Windows, você usaria um script em lote ou vbs para fazer a mesma coisa.
A outra opção seria apenas executar o aplicativo mysqlcheck para o banco de dados que você está interessado em verificar.
/caminho/para/mysqlcheck -u nome de usuário -pPASSWORD -c database_name
mysqlcheck estará no diretório em que você instalou seus arquivos binários mysql.
No Linux, você pode localizá-lo com o comando which