Como recuperar banco do Postgres pelo diretório

Publicado por Xerxes em 19/03/2013

[ Hits: 18.771 ]

 


Como recuperar banco do Postgres pelo diretório



Dica testada com Debian 6 e PostgreSQL 8.3.

Pode acontecer de você precisar recuperar um banco de dados Postgres, mas tendo a seu dispor apenas uma cópia de um HD como backup, e não um arquivo de backup gerado com o comando pg_dump.

Neste caso, após algumas tentativas, consegui restaurar o banco e compartilho aqui o procedimento que funcionou comigo. Ou seja, recuperação do banco através dos diretórios.

Antes de tudo, instale no servidor a versão do Postgres idêntica à versão instalada no backup.

Depois, pare o serviço Postgres. No caso do Debian, onde a dica foi testada, executei:

# sh /etc/init.d/postgresql stop

Depois, copie do backup os seguintes diretórios, substituindo os mesmos diretórios no servidor atual. Por exemplo, usando o Postgres 8.3:
  • /var/lib/postgresql/8.3
  • /usr/share/postgresql/8.3
  • /etc/postgresql/8.3

Obs.: recomendo renomear os diretórios originais para "nome-backup", ao invés de simplesmente substituí-los.

É necessário dar permissão para um diretório, após a cópia para o servidor:

# chmod 700 /var/lib/postgresql/8.3 -R

Inicialmente usei "777", mas o próprio sistema informou que era para mudar para 700, quando tentei iniciar o serviço.

Depois inicie o serviço:

# sh /etc/init.d/postgresql start

Pronto! Se tiver o phpPgAdmin instalado, poderá acessá-lo para visualizar o banco, acessando:

Talvez exista uma forma mais fácil, mas essa foi a que eu encontrei.

Foi na base do comando find que encontrei os referidos diretórios e fui copiando para o servidor.

Espero ajudar alguém na mesma situação.
Abraço!

Outras dicas deste autor

NOVO: Sauerbraten - Justice Edition

Confira: Ubuntu foi redesenhado!

Como instalar o Surfshark VPN no GNU/Linux

Comandos para obter informação de hardware

sources.list no Debian - Configuração automática

Leitura recomendada

Servidores Debian - Adicionando suporte ao MS SQL no PHP 5.3

PostgreSQL - "database server: mainError: could not exec" [Resolvido]

Resolvendo as dependências do DBDesigner 4 no Mandriva

Processo aleatório consumindo CPU por meio do usuário Postgres

Ativando o MySQL no Slackware Linux 10.x ou 11.0

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts