Como corrigir o backup de banco de dados grande que falha no UpdraftPlus
O que é a falha de backup de banco grande no UpdraftPlus?
O UpdraftPlus faz o backup do banco lendo cada tabela e gravando um dump compactado em wp-content/updraft. Em sites grandes, esse dump precisa de memória e tempo para ler tabelas pesadas e fechar o zip. Quando o backup do banco não conclui, o processo para no meio: ou a memória PHP estoura ao ler uma tabela grande, ou o servidor corta a execução antes do fim e o scheduler do WordPress não retoma o trabalho. O resultado e um backup do banco incompleto, sem o arquivo db.gz final.
Como identificar
- O backup trava numa porcentagem fixa durante a etapa do banco e nunca avanca (ex.: para em “Creating database backup” ou na tabela wp_posts).
- O log do UpdraftPlus registra “fatal error: allowed memory size of … bytes exhausted” enquanto le uma tabela do banco.
- O log mostra a mensagem “The backup apparently succeeded and is now complete” nunca aparecendo, com a tarefa reiniciando do zero a cada retomada.
- Falta o arquivo backup_…-db.gz na lista do UpdraftPlus, mesmo com os arquivos de plugins, temas e uploads concluidos.
Como prevenir
- Otimize o banco em rotina (revisoes, transients e lixeira) para manter wp_posts e wp_options enxutos e o dump leve.
- Mantenha WP_MEMORY_LIMIT em 256M ou mais no wp-config.php do site, dentro do teto de memória PHP da hospedagem.
- Deixe o split de arquivos do UpdraftPlus em um valor que o servidor aguente fechar (ex.: 200M) em vez do padrão de 1Gb.
Causa
- Memória PHP insuficiente para ler uma tabela grande do banco: o WP_MEMORY_LIMIT esta abaixo de 256M e o UpdraftPlus estoura ao processar wp_posts ou wp_postmeta.
- Tabela inchada por dados que não foram limpos: revisoes, lixeira, spam e transients acumulados em wp_options e wp_posts deixam o dump grande demais para fechar em uma execução.
- Scheduler do WordPress sem retomada: loopback bloqueado pela hospedagem ou DISABLE_WP_CRON em wp-config.php impede o UpdraftPlus de reagendar a continuacao quando o servidor corta o tempo.
- Limite de tempo do servidor (max_execution_time baixo ou timeout do webserver) encerra o processo PHP antes de o dump do banco terminar de gravar.
- Tamanho do arquivo único acima do que a hospedagem aceita: o split do UpdraftPlus em Expert settings esta no padrão de 1Gb e o servidor barra o dump antes de fecha-lo.
Como resolver
- Suba o limite de memória do WordPress: Aumente o limite de memória para o UpdraftPlus conseguir ler tabelas grandes sem estourar. Edite o wp-config.php pelo gerenciador de arquivos ou FTP e adicione a constante antes da linha que pede para parar de editar.
define( 'WP_MEMORY_LIMIT', '256M' ); define( 'WP_MAX_MEMORY_LIMIT', '512M' ); - Limpe e otimize o banco antes do backup: Reduza o tamanho das tabelas removendo revisoes, lixeira, spam e transients. Pelo WP-Optimize, va em WP-Optimize -> Database e rode todas as otimizacoes selecionadas para encolher wp_posts e wp_options antes de tentar o backup de novo.
WP-Optimize -> Database -> Run all selected optimizations wp transient delete --all wp post delete $(wp post list --post_status=trash --format=ids) --force - Garanta a retomada do backup pelo scheduler: O UpdraftPlus depende do cron do WordPress para retomar o trabalho quando o servidor corta o tempo. Se o loopback estiver bloqueado, force o cron alternativo no wp-config.php para a retomada acontecer.
define( 'ALTERNATE_WP_CRON', true ); - Divida o backup em arquivos menores: Em UpdraftPlus -> Settings -> Expert settings, baixe o limite de divisao do arquivo (padrão de 1Gb) para algo como 200M. Arquivos menores fecham antes do servidor cortar o tempo e contornam limites de tamanho da hospedagem.
UpdraftPlus -> Settings -> Expert settings -> Split archives every: 200 MB - Confira memória e tempo no Site Health: Verifique os valores reais aplicados antes de concluir. Em Tools -> Site Health -> Info, confira WP_MEMORY_LIMIT, WP_MAX_MEMORY_LIMIT e o max_execution_time do servidor para confirmar que a folga foi aplicada de fato.
Tools -> Site Health -> Info -> WordPress Constants
// wp-config.php — folga de memoria + retomada do backup do UpdraftPlus
// Cole acima da linha: /* Isso e tudo, pare de editar! */
define( 'WP_MEMORY_LIMIT', '256M' ); // memoria para ler tabelas grandes
define( 'WP_MAX_MEMORY_LIMIT', '512M' ); // teto para tarefas pesadas (backup)
define( 'ALTERNATE_WP_CRON', true ); // garante a retomada quando o loopback e bloqueado














