2013/3/25 Anderson Marques <[email protected]> > Boa tarde, pessoal tenho o seguinte senario, foi dado um drop na base por > "acidente", ai foi retirado o hd,
Drop como? Via SQL mesmo? > feito um restore com programas de terceiros e blz, temos os arquivos das > bases dentro de pasta 18800 que fica dentro da DATA, a questão agora é como > fazer o postgres enchegar essa base de novo, foi colocado dentro da pasta > data da mesma versão que ela foi dropada mas nada. existe algo do tipo > recompilar no postgres, tem como eu reutilizar essa base? > > Primeiro. Você tem um backup incremental? Um dump? A cópia de todo diretório base? Se sim, restaure esses e seja feliz... Até mesmo se tiver um mais antigos, desde que o esquema da base seja o mesmo, você pode tentar restaurá-lo e depois executar um rsync para atualizar os dados. Se não... Admito que estou chutando um pouco, mas tente o seguinte: 1. Não copie os arquivos para dentro do $PGDATA/base; 2. Crie um cluster novo em folha (sem nadica de nada); 3. Crie a base de dados e veja o oid criado (SELECT oid FROM pg_database WHERE datname = '<nome da sua base>'); 4. Dê um stop no PostgreSQL; 5. Substitua o diretório base/<oid gerado> pelo sua cópia; 6. Inicie o PostgreSQL (pode testar uma conexão em modo single antes para ver se consegue se conectar); 7. "Se deu certo", use o pg_dump para gerar um backup lógico; 8. Pare tudo, delete tudo, iniciei tudo de novo e restaure o backup lógico. A chance disso não dar certo é bem grande. É possível que haja dessincronização com o xlog, na sequência de oid ou pela falta de usuários (nesse último caso talvez ainda tenha outra solução). Atenciosamente, -- Matheus de Oliveira Analista de Banco de Dados Dextra Sistemas - MPS.Br nível F! www.dextra.com.br/postgres
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
