1
resposta

pg_dump e pg_dumpall - indicações de usos.

Bom dia!

Realizado o backup de um database com o comando pg_dump no formato texto SQL, no momento de restaurar o database com o comando psql num novo servidor PostGres, recebo mensagens de erro indicando que uma role não existe. Neste tipo de situação, será que o uso do utilitário pg_dumpall é a única forma de preservar e restaurar todas as configurações do ambiente original?

Quais são as indicações de uso dos comandos pg_dump e pg_dumpall?

Muito obrigado!

1 resposta

Oi, Ailton, tudo bem?

Sinto muito pela demora em te responder!

O erro ocorre, pois ao usar o comando pg_dump não são salvos as configurações do servidor ou das definições de papéis (roles) existentes no banco de dados. Uma opção seria utilizar o comando pg_dumpall, que você mencionou em sua postagem, pois dessa forma, é possível preservar as configurações do ambiente original, incluindo roles, configurações do servidor e outros bancos de dados, já que este comando faz o backup de todo o cluster do PostgreSQL.

O comando pg_dump é indicado quando queremos despejar um único banco de dados. Por outro lado, o comando pg_dumpall é mais indicado para realizar backup de um cluster inteiro ou de objetos globais comuns a todos os bancos de dados em um cluster como, por exemplo, funções e tablespaces.

Para mais informações recomendo os dois links abaixo da documentação de cada um dos comandos:

As informações estão em inglês e caso queira traduzi-las para português, basta clicar com o botão direito do mouse e selecionar a opção "Traduzir para o português".

Todavia, como não tenho acesso ao ambiente e ao cenário, testes são bem importantes para obter o resultado esperado, mas espero que esta resposta seja um bom ponto de partida para a resolução do seu problema.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software