Backup automático de banco de dados sem servidor intermediário no meio
Backup de banco de dados costuma seguir um fluxo chato: expdp/mysqldump/pg_dump gera o
arquivo local, depois alguém (ou algum cron) precisa subir isso pra algum lugar seguro — um FTP,
um bucket, um drive de rede. Na prática, esse “subir pra algum lugar” é a parte que mais falha:
scripts de scp que ninguém lembra como funcionam, credenciais hardcoded, upload que trava no
meio e ninguém percebe até precisar restaurar.
O problema de rotear o arquivo por um servidor no meio
Uma arquitetura comum é: agente → seu servidor → storage final. Funciona até o arquivo ficar grande. Cada backup passa duas vezes pela banda do seu servidor (recebendo do agente, reenviando pro storage), e se o processo que faz esse meio de campo não for cuidadoso com streaming, ele carrega o arquivo inteiro na memória — testamos isso na prática com um dump de ~2GB e o processo Node responsável morreu por falta de memória (RSS de mais de 5GB pra um arquivo de 2GB, porque a lib HTTP usada bufferizava o corpo inteiro por padrão).
A correção de verdade não foi só ajustar o buffer — foi tirar o servidor do meio. O agente manda o arquivo direto pro storage final, com uma URL de uso único que o servidor gera depois de conferir token e espaço disponível. O servidor nunca vê os bytes do backup; só autoriza.
Como fica na prática
# Linux
dbvault-sendfile /backup/producao_2026-10-11.dmp
# Windows
dbvault-sendfile C:\backups\producao_2026-10-11.bak
Por trás disso: o agente pede autorização (token + tamanho do arquivo), recebe uma URL temporária de upload direto pro bucket, envia o arquivo com barra de progresso (MB enviados, velocidade, tempo restante), e confirma com o servidor quando termina — só nesse momento o arquivo entra na listagem e na cota de espaço.
dbvault-listfile # lista o que já foi enviado
dbvault-getfile producao_2026-10-11.dmp # recupera direto do storage
dbvault-removefile producao_2026-10-11.dmp -y # remove, sem servidor no meio também
Dá pra agendar isso num cron (Linux) ou Agendador de Tarefas (Windows) logo depois do expdp/
pg_dump terminar, e o backup sobe sozinho, sem depender de alguém lembrar.
Se você mantém banco de dados e cansou de manter script de upload por conta própria, o DBVault faz exatamente essa parte — grátis até 2GB pra testar o fluxo.