Como faço para migrar meus dados de postgres de 8.4 para 9.1?

27

Eu atualizei minha máquina de desenvolvimento do Ubuntu de 11.04 para 11.10. No processo, meu postgres também foi atualizado de 8.4 para 9.1.

Mas parece que perdi todos os meus dados. Se eu olhar, posso ver que meus dados para o 8.4 estão na pasta /var/lib/postgres/8.4/main e meu novo banco de dados está em /var/lib/postgres/9.1/main .

Qual é a melhor maneira de migrar meus dados para a nova versão? Posso apenas copiar os arquivos?

    
por nathanvda 14.10.2011 / 16:27

3 respostas

27
su postgres
pg_dropcluster --stop 9.1 main    
pg_upgradecluster 8.4 main

No começo, isso não funcionou para mim por dois motivos. Em primeiro lugar, postgresql-8.4 foi destravado em algum momento, então tive que reinstalá-lo:

sudo apt-get install postgresql-8.4

Então eu tive que ir para o 8,4 postgresql.conf e mudar max_connections para 10. Então funcionou. Você deve conseguir encontrar o arquivo conf em /etc/postgresql/8.4/main/postgresql.conf

    
por Marconius 15.10.2011 / 07:25
4

Após a atualização para o 11.10, o PostgreSQL 9.1 foi instalado, mas a versão em execução era 8.4.

Eu tentei:

su postgres
pg_dropcluster --stop 9.1 main    
pg_upgradecluster 8.4 main

Ele relatou o erro:

Stopping old cluster...
pg_ctl: servidor não desligou
Error: Could not stop old cluster

Então, em outra janela:

$ sudo service postgresql-8.4 stop
 * Stopping PostgreSQL 8.4 database server                               [ OK ] 
[email protected]:~$ sudo service postgresql-8.4 start
 * Starting PostgreSQL 8.4 database server                               [ OK ] 

E mais uma vez:

pg_upgradecluster 8.4 main

Erros relacionados ao pgRouting foram relatados. Demorou um pouco (a noite toda!), Mas depois o banco de dados foi atualizado para 9.1. O PostGIS também foi atualizado para o 1.5.3.

    
por estibordo 16.10.2011 / 09:28
1

quando não houver tempo suficiente para um despejo e restauração, use o pg_upgrade: link

    
por maletin 16.04.2012 / 10:07

Tags