Como limpar tabelas órfãs no banco de dados MySQL do WordPress com segurança
Com o tempo, seu banco de dados WordPress acumula tabelas órfãs – tabelas que não pertencem mais a nenhum plugin, tema ou site ativo (especialmente em instalações multisite). Por exemplo, quando você desinstala um plugin, muitas vezes ele deixa suas tabelas no banco de dados. Do mesmo modo, restos de temas antigos e tabelas de sites excluídos no multisite permanecem ocupando espaço e adicionando carga desnecessária aos backups. Este guia mostra como identificar, analisar e remover essas tabelas órfãs com segurança, usando métodos manuais (SQL), WP-CLI e plugins específicos.
• Listar todas as tabelas do banco e identificar as candidatas à remoção.
• Usar comandos SQL seguros para eliminar tabelas órfãs.
• Automatizar a limpeza com WP-CLI.
• Aplicar plugins como Advanced Database Cleaner sem riscos.
• Implementar boas práticas de backup e verificação prévia.
1. O que são tabelas órfãs e por que removê-las?
Uma tabela órfã é aquela que não é mais utilizada pelo WordPress ou por qualquer plugin/tema ativo no momento. As causas mais comuns incluem:
- Plugins desinstalados incorretamente: Muitos plugins, ao serem desativados e removidos, não limpam suas próprias tabelas. Isso é uma prática de segurança (para não perder dados), mas acaba poluindo o banco.
- Restos de temas que criaram tabelas próprias: Alguns temas (especialmente de e-commerce ou diretórios) criam tabelas customizadas e, ao trocar de tema, elas permanecem.
- Sites excluídos em redes multisite: No WordPress Multisite, quando você exclui um subsite, as tabelas específicas dele (wp_2_posts, wp_2_options, etc.) muitas vezes não são removidas automaticamente.
- Plugins abandonados que deixaram tabelas mesmo após desinstalação.
Portanto, a remoção dessas tabelas traz benefícios diretos: reduz o tamanho do banco de dados, agiliza backups (menos dados para copiar), melhora o desempenho de consultas que percorrem todas as tabelas (ex: ferramentas de análise) e remove ruídos durante depuração.
2. Diagnóstico: identificando possíveis tabelas órfãs
Antes de qualquer remoção, você precisa listar as tabelas e saber quais pertencem a plugins/temas ativos.
SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'nome_do_seu_banco' ORDER BY TABLE_NAME;Substitua nome_do_seu_banco pelo nome real. Anote o prefixo (geralmente wp_).
O WordPress core, em uma instalação padrão (sem multisite), possui as seguintes tabelas (prefixo wp_):
Em multisite, acrescem tabelas como wp_blogs, wp_signups, wp_site, etc. Nunca remova essas.
Cada plugin pode criar tabelas com nomes que incluem o slug do plugin. Exemplos:
- WooCommerce: wp_woocommerce_sessions, wp_woocommerce_order_items, etc.
- Rank Math: wp_rank_math_*
- Yoast SEO: wp_yoast_*
- Elementor: wp_e_*
Consulte a documentação de cada plugin para conhecer suas tabelas. Se um plugin não está mais ativo, suas tabelas tornam-se órfãs.

3. Método 1: Remoção manual via SQL (seguro, mas trabalhoso)
Depois de identificar uma tabela órfã, você pode removê-la com o comando DROP TABLE. No entanto, é fundamental ter um backup recente (antes de qualquer DROP).
DROP TABLE IF EXISTS wp_nome_da_tabela_orfã;Para múltiplas tabelas de uma vez:
DROP TABLE IF EXISTS wp_tabela1, wp_tabela2, wp_tabela3;Exemplo prático: imagine que você usou o plugin “WP Old Plugin” há anos e suas tabelas são wp_old_plugin_data e wp_old_plugin_cache. Após confirmar que o plugin não está mais instalado, execute:
DROP TABLE IF EXISTS wp_old_plugin_data, wp_old_plugin_cache;_to_delete_ e aguarde alguns dias. Se nada quebrar, remova. Exemplo: RENAME TABLE wp_old_plugin_data TO wp_to_delete_old_plugin_data;4. Método 2: Limpeza automática com WP-CLI (avançado)
Se você tem acesso SSH, o WP-CLI oferece comandos para listar e remover tabelas órfãs de plugins desativados.
wp db tables --scope=orphanedEsse comando retorna apenas as tabelas que pertencem a plugins que não estão ativos no momento. É uma mão na roda.
wp db tables --scope=orphaned | xargs wp db dropCuidado: Esse comando não pede confirmação. Primeiro, teste com:
wp db tables --scope=orphanedpara visualizar quais serão eliminadas. Depois, execute a remoção.
O WP-CLI também permite filtrar por um prefixo específico, útil para multisite:
wp db tables --scope=orphaned --url=subsite.dominio.com5. Método 3: Uso do plugin Advanced Database Cleaner (recomendado para iniciantes)
O plugin gratuito Advanced Database Cleaner (mais de 100 mil instalações ativas) possui uma aba específica para “Tabelas órfãs”.
- Instale e ative o plugin.
- Acesse Ferramentas → Advanced DB Cleaner → Tabelas.
- O plugin lista todas as tabelas e marca como “órfã” aquelas que não pertencem ao core nem a nenhum plugin/tema ativo (com base em uma base de dados interna e heurística).
- Você pode selecionar as tabelas e clicar em “Eliminar”.
Depois da limpeza, você pode desinstalar o plugin ou mantê-lo para manutenções futuras.

6. Cuidados essenciais: backup e verificação de dependências
Antes de qualquer operação de exclusão de tabelas, siga este checklist de segurança:
- Backup completo do banco de dados: Use phpMyAdmin (Exportar) ou WP-CLI:
wp db export backup_antes_limpeza.sql. Guarde o arquivo em local seguro. - Verifique se o plugin/tema realmente foi removido: Às vezes, um plugin deixou de ser usado, mas seu código ainda está na pasta
/wp-content/plugins/(apenas desativado). Nesse caso, as tabelas podem ser necessárias quando você reativá-lo. A remoção deve ocorrer apenas após a exclusão definitiva da pasta do plugin. - Teste em staging primeiro: Se possível, clone o banco para um ambiente de testes e execute a limpeza. Veja se o site (front-end e admin) continua funcionando sem erros.
- Registre as tabelas removidas: Mantenha um log do que foi excluído. Caso algo quebre semanas depois, você saberá o que restaurar.
wp site list para conferir os sites ativos. Tabelas com prefixo de sites que não existem mais podem ser removidas.7. Limpeza de dados órfãos dentro de tabelas (complementar)
Embora este guia foque em tabelas inteiras, vale mencionar que registros órfãos dentro de tabelas legítimas (ex: postmeta sem post pai, termmeta sem termo) também incham o banco. Para esses casos, ferramentas como WP-Optimize ou o próprio Advanced Database Cleaner oferecem recursos de limpeza de dados. Contudo, trate isso como uma segunda etapa, após a remoção de tabelas órfãs.
Conclusão: banco de dados limpo, site mais saudável
A remoção de tabelas órfãs é uma das tarefas de manutenção mais negligenciadas, mas que traz benefícios tangíveis: backups menores, menos risco de conflitos e uma base de dados mais fácil de auditar. Seja usando SQL manual, WP-CLI ou o Advanced Database Cleaner, o princípio é o mesmo: identifique, confirme a inutilidade e então remova com backup em mãos. A partir de hoje, inclua essa verificação em sua rotina mensal de manutenção de WordPress.
🔧 Quer mais ferramentas para manter seu WordPress saudável?
No nosso catálogo, você encontra plugins de otimização e manutenção de banco de dados recomendados por especialistas.
🛒 Explorar catálogo →Continue acompanhando o blog para mais guias de boas práticas em WordPress.


