Como reparar e otimizar tabelas MySQL corrompidas
Oi! Eu sou a Sensei da GeHost 🌸 e hoje vou te guiar por um probleminha que assusta bastante, mas que na maioria das vezes tem solução rápida: tabelas MySQL corrompidas. Isso costuma acontecer depois de uma queda de energia, um script que travou no meio de uma gravação, ou simplesmente com o tempo, em bancos que recebem muita escrita (como fóruns, lojas virtuais e sites com muito comentário/pedido). Vamos resolver juntos, com calma.
Como saber se uma tabela está corrompida?
Alguns sinais comuns:
- O site (WordPress, loja, sistema próprio) mostra erro de banco de dados, tipo "table is marked as crashed";
- Páginas que dependem de banco ficam lentas ou em branco;
- Erros ao tentar consultar ou salvar dados.
Dica da Sensei: antes de mexer em qualquer coisa, respire. Corrupção de tabela é um problema comum e, na grande maioria dos casos, o próprio MySQL sabe se autorreparar. Você não vai "quebrar mais" o banco só por tentar reparar.
Passo 0: faça um backup antes de tudo
Mesmo que o reparo seja uma operação segura, é sempre mais gostoso trabalhar com uma rede de segurança embaixo. No cPanel, procure a ferramenta Backup e gere um backup do banco de dados (ou da conta completa) antes de continuar.
Passo 1: acesse o cPanel
Entre no painel do seu plano de hospedagem normalmente, com o usuário e senha que você já usa.
Passo 2: encontre o phpMyAdmin
Dentro do cPanel, vá até a área de Bancos de Dados e procure o ícone/link do phpMyAdmin. É por ali que a mágica acontece — o phpMyAdmin é a ferramenta visual que permite conversar com o MySQL sem precisar digitar comandos.
Passo 3: selecione o banco de dados
No menu lateral do phpMyAdmin, clique no nome do banco de dados do seu site (geralmente algo como usuario_wordpress ou parecido — se tiver dúvida de qual é, confira nas configurações do seu sistema, como o arquivo wp-config.php do WordPress).
Passo 4: selecione as tabelas
- Com o banco aberto, você verá a lista de tabelas;
- Marque a caixinha de seleção das tabelas que quer reparar — ou marque "Selecionar tudo", lá embaixo da lista, para pegar todas de uma vez;
- Depois de marcar, procure o menu suspenso "Com selecionadas" (ou "With selected", dependendo do idioma).
Passo 5: repare a(s) tabela(s)
No menu suspenso, escolha a opção "Repair table" (Reparar tabela). O phpMyAdmin vai rodar o comando de reparo em cada tabela selecionada e mostrar o resultado — geralmente um "OK" verdinho ao lado de cada uma.
Dica da Sensei: se alguma tabela usa o motor InnoDB, é normal o phpMyAdmin dizer que o reparo não é necessário ou não se aplica — esse motor de banco já tem recuperação automática embutida. A opção de reparo manual é mais usada em tabelas MyISAM.
Passo 6: otimize as tabelas
Depois do reparo, aproveite e faça uma faxina: selecione as tabelas novamente e, no mesmo menu suspenso, escolha "Optimize table" (Otimizar tabela). Isso reorganiza os dados internamente, recupera espaço desperdiçado e deixa as consultas mais rápidas. É uma boa prática rodar isso periodicamente, mesmo sem sinal de corrupção.
Passo 7: teste seu site
Volte ao seu site e navegue por algumas páginas para confirmar que o erro sumiu. Se você tiver um sistema como WordPress, também vale entrar no painel administrativo e checar se tudo carrega normal.
E se o reparo não resolver?
Às vezes a corrupção é mais séria e o reparo pelo phpMyAdmin não é suficiente. Nesse caso:
- Restaure o backup que você fez no Passo 0 (ou um backup mais antigo, se necessário);
- Ou abra um chamado com o nosso suporte, contando o que aconteceu e quais tabelas apresentaram problema — vamos te ajudar a investigar com mais profundidade.
Dica da Sensei: se isso acontece com frequência no mesmo site, vale investigar a causa raiz — pode ser um script mal otimizado fazendo muitas escritas simultâneas, um plugin com bug, ou até quedas de energia recorrentes no ambiente onde os dados são gerados. Reparar resolve o sintoma; encontrar a causa evita que aconteça de novo.
Prontinho! Reparar e otimizar tabelas é uma das tarefas de manutenção mais simples do universo MySQL, e agora você já sabe fazer isso com confiança. Qualquer dúvida no caminho, pode chamar a gente — estamos aqui pra isso. 🌸