2015-06-09 2 views
1

У меня есть установка PostgreSQL v7.3, которую мне нужно перенести с минимумом суеты на более новую, богатую ресурсами и намного более быструю машину, на которой уже установлен PostgreSQL 9.1.13. У меня есть исходный код для версии v7.3, которую я использовал, которая, если она была скомпилирована и установлена ​​(достаточно простая), сделала бы ее прочной (предполагая, что prying 9.1.13 оттуда сначала не проблема), но я предпочел бы использовать более новую версию, если это возможно.Перенастройка и восстановление PostgreSQL

У меня есть каталог v7.3 pgsql на новой машине как копия старой машины, не связанная в настоящее время с PostgreSQL.

В базе данных есть базы данных , некоторые из них архивные в том смысле, что они не использовались годами, но я бы очень хотел их сохранить.

Ни один из них не использует триггеры; они довольно простые. Таблицы с колонками, по несколько индексов.

Я знаю, что вы можете выводить одну БД на SQL, а затем передавать ее на новую установку, но это кажется очень грозным, подробным и трудоемким для меня.

Есть ли способ для одного выстрела?

+0

Я бы попросил 'pg_dump' /' pg_restore' попробовать, прежде чем искать альтернативы. Они по существу «выводят одну БД на SQL, а затем подают ее на новую установку», но, как правило, не «очень грозны, детализированы и отнимают много времени». –

+0

Ugh. Они очень похожи, когда у вас большое количество баз данных. Этот процесс конкретно меня интересует. Это абсурдно для того, что я пытаюсь выполнить. Я могу закончить туда, пока это не закончится, если это так, что нет фактического процесса миграции на уровне установки, но кажется более чем удивительным, что это будет так. – fyngyrz

+1

'pg_upgrade' может помочь, если вы были на> = 8.3. Так как вас нет, 'pg_dumpall'? –

ответ

1

pg_dump - обычный ответ для одной базы данных, pg_upgrade выполняет весь кластер на одной машине, но работает только с> = 8.3. В противном случае pg_dumpall будет pg_dump все базы данных на сервере в один выходной поток.

+0

... в этот момент, чтобы воссоздать, вы входите в систему как пользователь БД и делаете это: 'psql -f myBackup.sql template1' – fyngyrz

Смежные вопросы