---
queue_position: 26
title: "Backup PostgreSQL com pg_dump: rotina verificável"
slug: backup-postgresql-pg-dump-rotina-verificavel
site_key: host-yousecure
canonical: https://yousecure.io/blog/backup-postgresql-pg-dump-rotina-verificavel
category: databases
cluster: backup-banco
search_intent: informacional-comercial
funnel_stage: meio
author: "Host You Secure Team"
created_at: "2026-09-09T11:29:43-03:00"
planned_scheduled_at: null
status: queued-review
meta_description: "Aprenda a criar e tes
Se este conteúdo faz parte do seu projeto
Escolha a VPS pelo uso, não pelo excesso
Para workloads de IA ou banco de dados, o Performance é o ponto de partida equilibrado; escolha o Ultra quando precisar de mais margem de memória.
Plano
Recursos
Mensal
Perfil
Basic
4 vCPU · 4 GB RAM · 100 GB NVMe
R$ 99
Site e projeto pequeno
Performance
6 vCPU · 12 GB RAM · 150 GB NVMe
R$ 169
Produção e múltiplos serviços
Ultra
8 vCPU · 20 GB RAM · 200 GB NVMe
R$ 269
Cargas maiores e mais margem
Prova técnica: no benchmark publicado da VM Performance, medimos 1.855 ev/s em 6 threads, 288 ev/s em 1 thread, 11.858 MiB/s de memória e 338 MB/s de escrita sequencial, com teste direto na VM e sem Cloudflare.
Valores mensais exibidos para referência. A renovação segue o ciclo e o preço vigente informado no checkout antes da contratação.
---
queue_position: 26
title: "Backup PostgreSQL com pg_dump: rotina verificável"
slug: backup-postgresql-pg-dump-rotina-verificavel
site_key: host-yousecure
canonical: https://yousecure.io/blog/backup-postgresql-pg-dump-rotina-verificavel
category: databases
cluster: backup-banco
search_intent: informacional-comercial
funnel_stage: meio
author: "Host You Secure Team"
created_at: "2026-09-09T11:29:43-03:00"
planned_scheduled_at: null
status: queued-review
meta_description: "Aprenda a criar e testar backups PostgreSQL com pg_dump, retenção, logs e restauração em banco separado antes da produção."
excerpt: "Um dump que nunca foi restaurado é apenas uma hipótese de backup. Veja como testar o ciclo completo."
quick_answer: "Use pg_dump em formato custom, grave o resultado em destino protegido, registre sucesso e restaure periodicamente em um banco isolado com pg_restore."
featured_image: images/26-postgresql-backup.png
featured_image_alt: "Banco de dados PostgreSQL duplicado em um cofre de backups"
tags: [postgresql, pg_dump, backup, restore, banco-de-dados]
evidence_type: reproducible_procedure
evidence_environment: PostgreSQL com cliente pg_dump/pg_restore e diretório de restauração separado
evidence_procedure: "Gerar dump custom, listar conteúdo, restaurar em banco de teste e validar uma consulta conhecida."
evidence_observed_result: "A restauração isolada confirma formato, permissões e completude do arquivo."
evidence_limitation: "Dumps lógicos não substituem toda estratégia de recuperação física ou PITR em bases muito grandes."
information_gain: "O foco é o teste de retorno e a separação do destino, não apenas o comando de exportação."
primary_cta: "Ver VPS para bancos"
landing: /hosting_vps
---
# Backup PostgreSQL com pg_dump: rotina verificável
## Resposta rápida
Use `pg_dump` para exportação lógica e `pg_restore` para validar o retorno. O arquivo deve sair do mesmo disco do banco, ter acesso restrito e ser acompanhado por logs. A rotina só é confiável quando uma restauração é executada em ambiente separado e os dados esperados são conferidos.
## Defina o objetivo de recuperação
Pergunte quanto de dados pode ser perdido e quanto tempo a recuperação pode levar. Um dump diário pode não atender uma aplicação que precisa de recuperação por minuto. Para bases grandes ou requisitos rigorosos, combine backups físicos, WAL/PITR e testes documentados.
## Gere um dump custom
```bash
export PGHOST=127.0.0.1
export PGPORT=5432
export PGUSER=backup_user
export PGDATABASE=appdb
pg_dump --format=custom --file=/var/backups/postgresql/appdb-$(date +%F).dump
```
Não coloque senha na linha de comando. Use `.pgpass` com permissões `600`, secret manager ou autenticação apropriada. O usuário de backup deve ter somente os privilégios necessários.
Confira o arquivo:
```bash
pg_restore --list /var/backups/postgresql/appdb-2026-09-09.dump | head
```
## Envie para um destino separado
Copie para storage externo ou outro host com criptografia e retenção. Ter três cópias no mesmo disco não protege contra falha do volume ou exclusão acidental. Verifique tamanho, data e código de saída do processo.
## Restaure em banco isolado
```bash
createdb -h 127.0.0.1 -U postgres appdb_restore_test
pg_restore -h 127.0.0.1 -U postgres \
--dbname=appdb_restore_test --clean --if-exists \
/var/backups/postgresql/appdb-2026-09-09.dump
psql -d appdb_restore_test -c 'select count(*) from tabela_critica;'
```
Use um banco e credenciais de teste. Não restaure sobre produção para “ver se funciona”. Valide tabelas essenciais, sequência, extensões e permissões da aplicação.
## Automatize com responsabilidade
Um timer pode criar o dump, calcular checksum, enviar ao destino e falhar se qualquer etapa retornar erro. Adicione lock, rotação e alerta. Simule uma restauração em uma frequência compatível com o risco; a janela deve medir também tempo e consumo de recursos.
Durante um backup, monitore espaço e I/O. [Hospedar banco em uma VPS](https://yousecure.io/hosting_vps) exige reservar margem para dados, dumps temporários e logs.
## Checklist
- [ ] RPO/RTO definidos.
- [ ] Credencial sem senha no comando.
- [ ] Destino fora do volume principal.
- [ ] Dump listado e checksum registrado.
- [ ] Restauração isolada validada.
## FAQ
### `pg_dump` bloqueia o banco?
Ele usa um snapshot consistente, mas ainda pode gerar carga e interagir com locks. Teste o impacto e escolha a janela adequada.
### Posso guardar só o último dump?
Isso reduz a capacidade de voltar antes de uma corrupção descoberta tarde. Defina retenção conforme o risco e o custo.
## O que registrar por execução
Guarde nome da base, início e fim, tamanho, checksum, versão do cliente, destino e código de saída. Não grave a senha nem dados completos do cliente no log. Se o dump falhar por espaço, lock ou permissão, a rotina deve terminar com erro e notificar alguém; um arquivo parcial não pode ser confundido com backup válido. Uma restauração periódica também mede o tempo necessário para recuperar o serviço, informação que o comando de exportação sozinho não fornece.
Comentários (0)
Ainda não há comentários. Seja o primeiro!