Seu site WordPress está lento? O banco de dados pode ser o vilão
Quando um site WordPress fica lento, o banco de dados é um dos primeiros suspeitos. Revisões de posts, transientes expirados, spam e tabelas infladas podem deixar as consultas mais pesadas e o servidor sobrecarregado. Mas antes de sair limpando tudo, é preciso entender: nem toda lentidão vem do banco. Este artigo mostra como identificar se o problema é realmente o banco de dados, como limpá-lo com segurança e, principalmente, quando essa limpeza não resolve nada.
Sintomas: como saber se o banco de dados está pesado
Alguns sinais clássicos de banco de dados inflado:
- O painel administrativo demora para carregar, especialmente as listas de posts e páginas.
- O site fica lento em páginas que fazem muitas consultas, como arquivos, busca e home com muitos itens.
- O tempo de resposta do servidor (TTFB) é alto, mesmo com cache ativo.
- O backup do site fica enorme e demora para gerar.
Se você percebe esses sintomas, vale investigar o banco. Mas atenção: eles também podem ser causados por plugins mal otimizados, tema pesado, falta de cache ou hospedagem fraca.
Experiências que tivemos com um de nossos cliente
O site Central do Timão é um portal especializado em notícias do Corinthians, com conteúdo publicado diariamente. A plataforma é desenvolvida em WordPress.
Inicialmente, o site apresentava um desempenho muito abaixo do esperado quando comparado a outros portais do mesmo segmento. Para melhorar a performance, foram realizados diversos procedimentos, incluindo o aumento da memória disponível no servidor, otimização de imagens e implementação de mecanismos de cache.
No entanto, percebemos que, além dessas otimizações, também era necessário atuar diretamente no banco de dados. Foram realizadas limpezas de dados desnecessários, remoção de resíduos deixados por plugins antigos e otimizações nas tabelas do MySQL, incluindo a criação de índices para melhorar o desempenho de consultas específicas.
Apesar do site receber centenas de milhares de acessos ao longo do mês, as otimizações proporcionaram uma melhoria significativa no desempenho das requisições e na utilização dos recursos do servidor. Como resultado, houve uma redução na ocorrência de erros e indisponibilidades, especialmente relacionados à sobrecarga do servidor, contribuindo para uma maior estabilidade e disponibilidade do site.
Causas prováveis: o que costuma inchar o banco
- Revisões de posts e páginas: cada edição salva uma revisão. Com o tempo, são centenas ou milhares de registros desnecessários.
- Transientes expirados: o WordPress usa a tabela
wp_optionspara armazenar dados temporários (transientes). Muitos plugins não limpam os expirados, e eles se acumulam. - Spam e lixo: comentários marcados como spam ou na lixeira ficam no banco.
- Dados órfãos: meta-dados de posts, usuários e comentários que sobraram de plugins desinstalados ou de exclusões mal feitas.
- Tabelas de plugins: alguns plugins criam tabelas próprias que continuam crescendo mesmo após a desinstalação.
Antes de limpar: meça o desempenho atual
Para saber se a limpeza fez diferença, você precisa medir antes e depois. Anote o tempo de carregamento de uma página (use o PageSpeed Insights ou o GTmetrix) e o tamanho do banco (pelo phpMyAdmin ou por um plugin de backup). Se o banco tem 200 MB, mas a página está lenta por causa de um script não otimizado, limpar o banco não vai resolver.
Como diagnosticar: veja se o banco é realmente o problema
- Verifique o tamanho do banco: no phpMyAdmin (ou no painel da hospedagem), veja o tamanho total e o tamanho de cada tabela. Se a tabela
wp_optionsouwp_poststiver mais de 100 MB, há acúmulo. - Teste com cache ativo: se o site está com cache de página ativo e ainda assim lento, o banco pode estar com problemas. Se o cache resolve a lentidão, o gargalo pode estar no servidor ou no tema.
- Desative plugins um a um: se a lentidão persiste com o cache ativo, desative plugins de cache, SEO e construtores de página temporariamente. Se o site acelerar, o problema é o plugin, não o banco.
Solução passo a passo: como limpar o banco com segurança
Antes de qualquer coisa, faça um backup completo do banco de dados. Se algo der errado, você poderá restaurar. Use o painel da hospedagem, um plugin de backup ou o phpMyAdmin.
1. Limpe revisões de posts
Você pode usar um plugin como o WP-Optimize ou o Advanced Database Cleaner, ou executar uma consulta SQL no phpMyAdmin:
DELETE FROM wp_posts WHERE post_type = 'revision';
Isso remove todas as revisões. Se quiser limitar, adicione AND post_date < NOW() - INTERVAL 30 DAY para apagar apenas as mais antigas.
2. Limpe transientes expirados
No WP-Optimize, há uma opção para limpar transientes. No SQL:
DELETE FROM wp_options WHERE option_name LIKE '_transient_%' AND option_name NOT LIKE '_transient_timeout_%';
Isso remove transientes que não são timeouts. Para limpar também os expirados, use:
DELETE FROM wp_options WHERE option_name LIKE '_transient_timeout_%' AND option_value < UNIX_TIMESTAMP();
3. Limpe spam e lixeira
No painel, vá em Comentários e esvazie a lixeira. No SQL:
DELETE FROM wp_comments WHERE comment_approved = 'spam';
DELETE FROM wp_comments WHERE comment_approved = 'trash';
4. Otimize as tabelas
Após a limpeza, otimize as tabelas para reorganizar os dados. No phpMyAdmin, selecione todas as tabelas e escolha “Otimizar tabela”. Ou use o plugin.
5. Remova tabelas órfãs de plugins
Se você desinstalou um plugin e ele deixou tabelas, você pode removê-las. Mas cuidado: só faça isso se tiver certeza de que o plugin não será reinstalado. No phpMyAdmin, identifique tabelas com prefixos de plugins (ex.: wp_revslider_) e exclua-as.
Quando NÃO usar essa solução
Limpar o banco não resolve lentidão causada por:
- Hospedagem fraca: se o servidor é lento, o banco otimizado não vai compensar.
- Plugins mal codificados: um plugin que faz consultas pesadas vai continuar lento mesmo com o banco enxuto.
- Tema pesado: scripts e CSS não otimizados pesam no carregamento, independente do banco.
- Falta de cache: sem cache de página, o PHP e o banco são acessados a cada visita.
- CDN ausente: para visitantes distantes, a latência da rede é o gargalo.
Se o site continua lento após a limpeza, investigue outras causas. O problema pode ser de infraestrutura, e aí a solução é outra.
Erros comuns ao limpar o banco
- Esquecer o backup: uma consulta errada pode apagar dados importantes. Sem backup, você perde conteúdo.
- Limpar transientes ativos: alguns plugins usam transientes para cache de consultas. Se você limpar todos, o site pode ficar lento temporariamente até recriar.
- Remover tabelas de plugins em uso: isso pode quebrar o plugin e causar erros no site.
- Usar consultas SQL sem entender: se você não tem experiência, prefira plugins com interface amigável.
Prevenção: como evitar que o banco volte a inchar
- Limite o número de revisões: adicione no
wp-config.phpa constanteWP_POST_REVISIONScom um valor baixo, como 5. - Use um plugin de limpeza agendada: configure o WP-Optimize para limpar transientes e revisões automaticamente.
- Evite instalar plugins desnecessários: cada plugin pode adicionar tabelas e dados.
- Mantenha os plugins atualizados: versões novas costumam corrigir vazamentos de dados.
Quando chamar alguém
Se você não tem familiaridade com phpMyAdmin ou não se sente seguro executando consultas SQL, contrate um profissional. Um erro pode derrubar o site. Se você administra vários sites, considere usar um painel de gerenciamento como o 100% WP, que centraliza backups e monitoramento, facilitando a manutenção preventiva.
Meça novamente e compare
Após a limpeza, repita as medições de antes. Se o tempo de carregamento caiu e o banco está menor, a limpeza valeu. Se não mudou nada, o problema era outro. Nesse caso, procure ajuda especializada — talvez seja hora de otimizar o site com um serviço especializado.


