Pular para o conteúdo principal
Documentos
Sintaxe básicaFunções JSONAcionadoresGerenciamento de tabelas e esquemasFunções de cadeia de caracteresFunções matemáticasFunções de dataBancos de dadosÍndices

PostgreSQL pg_dump

O PostgreSQL `pg_dump` é um utilitário para fazer o backup de um banco de dados PostgreSQL. Ele gera um arquivo de texto com comandos SQL que podem recriar o banco de dados e seus objetos, o que o torna essencial para backup e migração de dados.

Uso

O utilitário `pg_dump` é utilizado para criar um backup de um banco de dados PostgreSQL. Ele é frequentemente empregado quando você precisa migrar dados, realizar backups de rotina ou mover dados entre ambientes.

shell
pg_dump [options] dbname > outfile

Nessa sintaxe, `pg_dump` é seguido por várias opções e o `dbname`, indicando qual banco de dados deve ser copiado, com a saída redirecionada para `outfile`. As opções comuns incluem `-U` para especificar o usuário e `-h` para especificar o host, oferecendo flexibilidade para fazer backup de bancos de dados em diferentes ambientes.

Exemplos

1. Backup básico

shell
pg_dump mydatabase > mydatabase.sql

Esse comando básico cria um backup do `mydatabase` e o armazena em um arquivo chamado `mydatabase.sql`.

2. Backup com compactação

shell
pg_dump -Fc mydatabase > mydatabase.dump

Este exemplo usa a opção `-Fc` para criar um backup em formato personalizado, que é compactado e mais eficiente para bancos de dados grandes. O formato personalizado é flexível para restaurações parciais, permitindo a restauração seletiva de objetos do banco de dados.

3. Backup com tabelas específicas

shell
pg_dump -t mytable mydatabase > mytable.sql

Aqui, a opção `-t` especifica que somente a tabela `mytable` de `mydatabase` deve ser despejada em `mytable.sql`.

Restauração a partir de um backup

Para restaurar um backup, você pode usar `pg_restore` para arquivos de formato personalizado ou `psql` para arquivos SQL simples.

Como restaurar um backup de SQL simples

shell
psql -U username -d dbname -f mydatabase.sql

Restauração a partir de um backup de formato personalizado

shell
pg_restore -U username -d dbname mydatabase.dump

Dicas e práticas recomendadas

  • Backups regulares. Programe operações regulares de `pg_dump` para garantir que você sempre tenha backups atualizados.
  • Use o formato personalizado para bancos de dados grandes. O formato personalizado (`-Fc`) é mais eficiente e oferece flexibilidade para restaurações parciais, o que pode ser crucial para bancos de dados grandes, nos quais você pode precisar restaurar apenas partes específicas.
  • Teste seus backups. Restaure regularmente os backups em um ambiente de teste para garantir a integridade e a completude dos dados.
  • Armazenamento seguro. Armazene os backups em um local seguro para proteger contra acesso não autorizado e perda de dados.
  • Tamanho da saída do monitor. Fique de olho no tamanho de suas lixeiras para prever as necessidades de armazenamento e possíveis problemas.

Solução de problemas comuns

  • Problemas de conexão: Verifique se o servidor de banco de dados está em execução e acessível. Use `-h` para especificar o host, se necessário.
  • Permissão negada: Verifique as permissões de usuário e use `-U` para especificar um usuário com os direitos de acesso necessários.
  • Espaço em disco: Monitore o espaço disponível em disco para evitar backups incompletos devido a limitações de espaço.