Manual MyTable

MySQL • Manutenção

Rotinas de manutenção mantêm tabelas e índices eficientes no MySQL (InnoDB). Nesta tela você encontra ações guiadas para Verificar (checagens gerais), Analyze (atualizar estatísticas), Optimize (reorganizar dados/índices), Rebuild/Recreate índice (quando aplicável) e utilitários de verificação de integridade. Use após grandes cargas, exclusões maciças, mudanças estruturais ou quedas de performance.


Abrir “Manutenção”

  1. Conecte-se à sua conexão MySQL e selecione o banco.
  2. Escolha o schema e a tabela alvo.
  3. No menu da tabela, toque em Manutenção.

O que você pode fazer aqui

  • Verificar — checagens básicas (metadados, tamanho, engine, collation, chaves).
  • Analyze — atualiza estatísticas do otimizador (melhora planos de execução).
  • Optimize Table — reorganiza dados/índices e pode reduzir fragmentação (InnoDB: recreate + analyze).
  • Rebuild índice — recria um índice específico quando identificado como ineficiente.
  • Checks — validações como existência de FKs referenciadas, collation divergente etc.

Dica: Em geral, Analyze é rápido e frequente. Optimize/Rebuild exigem janela de manutenção para tabelas grandes.


Analyze (estatísticas)

Atualiza estatísticas de cardinalidade e distribuição de valores. Recomenda-se após:

  • Grandes INSERT/DELETE/UPDATE.
  • Criação/remoção de índices.
  • Mudanças de tipos ou estrutura.

Na tela, toque em Analyze e acompanhe o status.


Optimize Table (fragmentação e espaço)

  • Para InnoDB, executa um recreate interno da tabela, recalculando estatísticas e reduzindo fragmentação.
  • Útil após grandes exclusões/atualizações ou quando o arquivo ficou muito fragmentado.
  • Planeje execução fora do pico — pode bloquear ou degradar desempenho enquanto roda.

Rebuild de índices

  • Recrie índices específicos que cresceram demais ou têm baixa eficiência.
  • Se consultas indexadas ficaram lentas sem mudança lógica, considere rebuild.
  • Verifique com EXPLAIN no Editor SQL antes/depois.

Verificações úteis

  • FKs órfãs: identifica registros filhos sem pai (quando o desenho permite).
  • Collation divergente: aponta colunas/tabelas com collation diferente que afeta JOIN/ORDER BY.
  • Índices redundantes: detecta índices que começam pelo mesmo prefixo de outro.
  • Seletividade baixa: sugere remoção/ajuste (ex.: boolean isolado).

Quando usar cada ação

  • Analyze: após grandes mudanças; rápido e seguro.
  • Optimize: quando houver fragmentação/arquivos muito grandes após limpezas.
  • Rebuild índice: para índices específicos ineficientes.

Boas práticas

  • Defina uma janela recorrente para Analyze e, quando necessário, para Optimize/Rebuild.
  • Monitore tempo, locks e impacto em consultas críticas.
  • Garanta backup antes de operações pesadas.
  • Após manutenção, valide consultas-chave e latência média.

Erros comuns (e soluções)

“Table is locked / lock wait timeout”

  • Agende fora do pico e minimize transações concorrentes longas.

“Espaço insuficiente”

  • Verifique espaço em disco antes de Optimize; considere executar por etapas.

“Permissão negada”

  • Use conta com privilégios de ALTER e INDEX na tabela e USAGE no schema.

Ferramentas relacionadas

Próximo: MySQL • Alterar Tabela • Voltar: MySQL • Partições