Проблема с дампом PostgreSQL

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

akakernel
Сообщения: 50

Проблема с дампом PostgreSQL

Сообщение akakernel »

На машине стоит FreeBSD 6.4. До селе использовалась база с postgresql 8.2.9. Потом добрые люди дали мне некое подобие дампа базы (каталог data) и сказали, что это надо поднять. Судя по выкидываемым ошибкам было выяснено, что эта база крутилась на 8 версии сервера постгрея. Переставив на 8.0.17 после попытки запустить выкидывает сделующее:

Код: Выделить всё

# su -l pgsql -c '/usr/local/bin/postgres -D /usr/local/pgsql/data'
FATAL:  database files are incompatible with server
DETAIL:  The database cluster was initialized with PG_CONTROL_VERSION 822, but the server was compiled with PG_CONTROL_VERSION 74.
HINT:  It looks like you need to initdb.

Погугив ненашел ничего интересного , разве что по поводу строки

Код: Выделить всё

 FATAL:  database files are incompatible with server
было предположение, что на машине стоит два сервера постгрея и запускается не тот, но этот вариант исключен.

Куда копать просто незнаю.

Тему я создавал на другом форуме, там мне ничем не помогли, может тут у кого будут дельные советы. http://sysadmins.ru/topic239182.html
Спасибо сказали:
Аватара пользователя
korisk
Сообщения: 205
ОС: Xubuntu

Re: Проблема с дампом PostgreSQL

Сообщение korisk »

akakernel писал(а): ↑
24.07.2009 23:02
Тему я создавал на другом форуме, там мне ничем не помогли, может тут у кого будут дельные советы. http://sysadmins.ru/topic239182.html

Наверное эффективнее будет спросить тут
Registerd Linux user #486684 at http://counter.li.org/
Спасибо сказали:
Аватара пользователя
danger08
Сообщения: 715
ОС: Linux (CentOS, Ubuntu)

Re: Проблема с дампом PostgreSQL

Сообщение danger08 »

akakernel писал(а): ↑
24.07.2009 23:02
Потом добрые люди дали мне некое подобие дампа базы (каталог data) и сказали, что это надо поднять.

Это не добрые люди, это балбесы (извините за выражение).
Они вам дали базу в бинарном виде, как она была у них на диске - а надо было дамп.

Вам нужно найти установленный postgre такой же версии, что стоял у них; и сделать то, что вы хотели сделать у себя (заменить папку data). После того, как база там подымется, сделать дамп нужной БД (посредством pg_dump). Или, как вариант, попросить "добрых людей" сделать дамп нужной БД (посредством того же pg_dump).

В результате, вы получите файл, содержащий БД - и этот файл можете импортировать (посредством pg_restore) на любой postgre-сервер, вне зависимости от версии.
Блогосайт - http://www.fateyev.com
Спасибо сказали:
akakernel
Сообщения: 50

Re: Проблема с дампом PostgreSQL

Сообщение akakernel »

danger08 писал(а): ↑
25.07.2009 20:11
akakernel писал(а): ↑
24.07.2009 23:02
Потом добрые люди дали мне некое подобие дампа базы (каталог data) и сказали, что это надо поднять.

Это не добрые люди, это балбесы (извините за выражение).
Они вам дали базу в бинарном виде, как она была у них на диске - а надо было дамп.

Вам нужно найти установленный postgre такой же версии, что стоял у них; и сделать то, что вы хотели сделать у себя (заменить папку data). После того, как база там подымется, сделать дамп нужной БД (посредством pg_dump). Или, как вариант, попросить "добрых людей" сделать дамп нужной БД (посредством того же pg_dump).

В результате, вы получите файл, содержащий БД - и этот файл можете импортировать (посредством pg_restore) на любой postgre-сервер, вне зависимости от версии.

По поводу точной весии базы приходится только гадать, но я пробовал разные версии, отчет об этом находится по ссылке приведенной в первом посте.
Спасибо сказали:
Аватара пользователя
danger08
Сообщения: 715
ОС: Linux (CentOS, Ubuntu)

Re: Проблема с дампом PostgreSQL

Сообщение danger08 »

akakernel писал(а): ↑
27.07.2009 15:19
По поводу точной весии базы приходится только гадать, но я пробовал разные версии, отчет об этом находится по ссылке приведенной в первом посте.

Тем не менее, формат бинарного хранилища (представление данных в пресловутой папке data) может меняться от версии к версии - никто не гарантирует совместимость, да и она не нужна. Для переноса данных служат дампы.

Я не знаю, как хранится идентификатор версии сервера в бинарных файлах базы (и хранится ли вообще); лучше вам, конечно, попросить знакомых сдампить нужную базу. Иначе копайте в сторону определения версии postgre по файлам базы, ставьте такую же версию ..и т.д.
Блогосайт - http://www.fateyev.com
Спасибо сказали: