Como limpar a tabela wp_options inchada (autoload)
O que é o autoload inchado no WordPress?
Na tabela de opções do WordPress, cada linha tem uma coluna autoload. As opções com autoload = yes são lidas de uma vez em cada carregamento de página, via a função alloptions. Quando plugins mal-comportados ou já removidos deixam megabytes de dados marcados como autoload, o WordPress passa a carregar tudo isso a cada requisição, e o site fica lento mesmo com pouca visita. Limpar esse autoload é o que devolve a performance.
Como identificar
- O site fica lento em todas as páginas, mesmo as simples, sem pico de tráfego que justifique.
- Uma consulta de tamanho mostra a opção alloptions com vários megabytes carregados por requisição.
- O Query Monitor aponta a query de opções (autoload) entre as mais pesadas do carregamento.
- A lentidão começou ou piorou depois de instalar e remover vários plugins ao longo do tempo.
Antes de começar: Apagar a opção errada pode desconfigurar um plugin ativo ou o próprio WordPress. Faça backup do banco antes e remova apenas opções cuja origem você confirmou (em geral, de plugins já desinstalados).
Como prevenir
- Audite o tamanho do autoload periodicamente, antes que passe de 1 MB por requisição
- Prefira plugins que usam transients com expiração em vez de opções autoload permanentes
- Ao remover um plugin, confirme se ele limpou as próprias opções e apague as órfãs que ficaram
Causa
- Plugins gravando grandes blocos de dados (logs, caches, transients) com autoload = yes na tabela de opções.
- Plugins desinstalados que deixaram suas opções autoload órfãs para trás em vez de removê-las.
- Transients expirados acumulados que nunca foram limpos e continuam marcados como autoload.
- Configurações ou dados serializados enormes salvos numa única opção carregada em toda página.
- Falta de cache de objeto persistente, fazendo o WordPress reler a opção alloptions a cada requisição.
Como resolver
- Faça backup do banco antes de tudo: exporte o banco pelo phpMyAdmin. Você vai editar e apagar linhas da tabela de opções, então um backup é obrigatório antes de qualquer comando.
- Meça o tamanho do autoload: no phpMyAdmin (aba SQL), some o tamanho das opções autoload para saber o estrago. Acima de 1 MB já costuma pesar; vários MB indicam inchaço grave.
- Liste as maiores opções autoload: ordene as opções autoload por tamanho para identificar quem está inchando a tabela, normalmente um plugin específico ou transients antigos.
- Desligue ou apague o que não precisa carregar sempre: para opções de plugins ativos que não precisam ser globais, troque autoload para no; para órfãs de plugins removidos, apague a linha. Confirme a origem antes de remover.
- Adote um cache de objeto persistente: ative Redis ou Memcached para o WordPress não reler o alloptions do banco a cada página, aliviando o efeito do autoload.
SQL
-- 1) Tamanho total do autoload (rode no phpMyAdmin, aba SQL)
SELECT ROUND(SUM(LENGTH(option_value))/1024/1024, 2) AS autoload_mb
FROM wp_options WHERE autoload = 'yes';
-- 2) As 20 maiores opcoes carregadas em toda pagina
SELECT option_name, ROUND(LENGTH(option_value)/1024, 2) AS kb
FROM wp_options WHERE autoload = 'yes'
ORDER BY LENGTH(option_value) DESC LIMIT 20;
-- 3) Desligar o autoload de uma opcao (sem apagar o dado)
UPDATE wp_options SET autoload = 'no' WHERE option_name = 'nome_da_opcao';
-- 4) Limpar transients expirados acumulados
DELETE FROM wp_options WHERE option_name LIKE '_transient_%';
Perguntas frequentes
O que é o autoload na tabela de opções?
É a coluna que decide se uma opção é carregada em toda página. Opções com autoload = yes entram na consulta alloptions que o WordPress roda a cada requisição. Quanto mais dados marcados assim, mais pesada fica cada carga de página.
Quanto autoload é demais?
Como referência, acima de 1 MB de dados autoload já começa a pesar, e vários megabytes indicam inchaço grave. Meça com a soma do tamanho das opções autoload = yes antes de agir.
Posso simplesmente apagar todas as opções grandes?
Não. Algumas opções grandes pertencem a plugins ativos e são necessárias. Para essas, troque o autoload para no em vez de apagar. Só remova linhas cuja origem você confirmou ser de um plugin já desinstalado.
Desligar o autoload de uma opção quebra o plugin?
Não quebra o dado: o valor continua na tabela e ainda pode ser lido sob demanda. Apenas deixa de ser carregado em toda página. Plugins bem-feitos lidam bem com isso; teste o site logo depois para confirmar.
Os transients contam no autoload?
Sim, muitos transients são gravados com autoload. Os expirados costumam ficar acumulados na tabela e podem ser removidos com segurança, liberando peso da consulta de opções.
Limpei o autoload mas o site continua lento. O que mais checar?
Ative um cache de objeto persistente (Redis ou Memcached) para o WordPress não reler o alloptions a cada página. Verifique também queries lentas de outros plugins com o Query Monitor, já que o autoload é só uma das causas de lentidão.














