Как мне перенести мои данные postgres с 8.4 на 9.1?

Я обновил свой компьютер с Ubuntu с 11.04 до 11.10. В процессе работы мои postgres также были обновлены с 8.4 до 9.1.

Но я, кажется, потерял все свои данные. Если я посмотрю, то увижу, что мои данные для 8.4 находятся в папке /var/lib/postgres/8.4/main, а моя новая база данных - в /var/lib/postgres/9.1/main.

Как лучше всего перенести мои данные в новую версию? Могу ли я просто скопировать файлы?

27
задан 17 March 2012 в 21:56

3 ответа

su postgres
pg_dropcluster --stop 9.1 main    
pg_upgradecluster 8.4 main

Сначала это не работало для меня по двум причинам. Во-первых, postgresql-8.4 в какой-то момент не работал , Вы должны быть в состоянии найти файл conf на /etc/postgresql/8.4/main/postgresql.conf

0
ответ дан 17 March 2012 в 21:56

если для дампа и восстановления не хватает времени, используйте pg_upgrade: http://www.postgresql.org/docs/devel/static/pgupgrade.html

0
ответ дан 17 March 2012 в 21:56

После обновления до 11.10 был установлен PostgreSQL 9.1, но работала версия 8.4.

Я пытался:

su postgres
pg_dropcluster --stop 9.1 main    
pg_upgradecluster 8.4 main

Он сообщил об ошибке:

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

Итак, в другом окне:

$ sudo service postgresql-8.4 stop
 * Stopping PostgreSQL 8.4 database server                               [ OK ] 
jgr@cagliari:~$ sudo service postgresql-8.4 start
 * Starting PostgreSQL 8.4 database server                               [ OK ] 

И затем снова:

pg_upgradecluster 8.4 main

Сообщалось об ошибках, связанных с pgRouting. Это заняло некоторое время (всю ночь!), Но после этого база данных была обновлена ​​до 9.1. PostGIS также был обновлён до 1.5.3.

0
ответ дан 17 March 2012 в 21:56

Другие вопросы по тегам:

Похожие вопросы: