Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Перенос баз между разными версиями Postgresql / 4 сообщений из 4, страница 1 из 1
28.04.2007, 20:06
    #34496502
schs
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос баз между разными версиями Postgresql
Приветствую!

Господа, не мог бы кто помочь советом по поводу следующей проблемы:
есть необходимость перенести базы с одного сервера на другой.
Конфигурации серверов следующие:
1) RH9, на котором работает связка Apache(1.3.33)-PHP(4.4.4)-Postgresql(7.4.3)
2) Fedora 6, Apache(1.3.37)-PHP(4.4.4)-Postgresql(8.1.4)
На первом сервере содержится порядка 30 баз, пять из которых содержат BLOB-ы. Все это пробавалось переносится след. образом:
- делался полный дамп всех баз на 1-м сервере: pg_dumpall NameDB > backup
- затем все это распаковывалось на 2-м: psql -f backup template1
- после чего делался дамп 5-ти баз с BLOB: pg_dump -b -F t NameDB > backupdb.tar
- соответственно на 2-м сервере: dropdb NameDB -> createdb NameDB -> pg_restore -d NameDB backupdb.tar

в результате последнего действия для 3-х баз выдавались одинак. ошибки:

pg_restore: [archiver] WARNING: don't know how to set owner for object type FUNC PROCEDURAL LANGUAGE

для 2-х других примерно след. содержания:

pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 110; 0 1229066 FUNC PROCEDURAL LANGUAGE plpgsql_call_handler() postgres
pg_restore: [archiver (db)] could not execute query: ERROR: could not load library "/usr/local/pgsql/lib/plpgsql.so": /usr/local/pgsql/lib/plpgsql.so: undefined symbol: SortMem
Command was:
CREATE FUNCTION plpgsql_call_handler() RETURNS language_handler
AS '/usr/local/pgsql/lib/plpgsql', 'plpgsql_call_handle...
pg_restore: [archiver] WARNING: don't know how to set owner for object type FUNC PROCEDURAL LANGUAGE
WARNING: errors ignored on restore: 1

Не подскажете, что делается не так? Куда копать? Или какие есть обходные пути для корректного переноса между разными версиями Postgresql? Или эти ошибки не очень существенны?

Да забыл сказать, неа FC6 Postgresql ставился с помощью yum, а на RH9 судя по всему из исходников. А по сему пробовал ставить из исходников на FC6 и версию postgresql 7.4.3, но ошибки были похожие:

[archiver (db)] Error from TOC entry 110; 0 ....................

[archiver (db)] could not execute query: ERROR: could not load library "/usr/local/pgsql/lib/plpgsql.so": /usr/local/pgsql/lib/plpgsql.so: undefined symbol: SortMem
Command was:
CREATE FUNCTION plpgsql_call_handler() RETURNS language_handler
AS '/usr/local/pgsql/lib/plpgsql', 'plpgsql_call_handle...

хотя библиотека /usr/local/pgsql/lib/plpgsql.so по данному пути имелась :(
...
Рейтинг: 0 / 0
28.04.2007, 20:33
    #34496533
.gc
.gc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос баз между разными версиями Postgresql
пните гугл по сообщениям об ошибках.
наверняка Вы не первый наткнулись на такие проблемы и в mail-архивах ( http://archives.postgresql.org/ ) должно найтись...
...
Рейтинг: 0 / 0
29.04.2007, 11:24
    #34496794
ChameLe0n
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос баз между разными версиями Postgresql
проблем с переносом не должно быть.. покажи вывод ldd /usr/local/pgsql/lib/plpgsql.so
...
Рейтинг: 0 / 0
02.05.2007, 20:12
    #34500555
schs
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перенос баз между разными версиями Postgresql
Спасибо ответившим.
Немного разобрался с ситуацией: на старом сервере postgresql видно не один раз ставился и поэтому файл plpgsql.so присутствует не только в каталоге /usr/local/pgsql/lib/ , но и в каталоге /usr/lib/pgsql/. И судя по всему в 2 базах как-то зашит путь /usr/lib/pgsql/plpgsql.so. И при стандартной установке из rpm-ок или исходников сия ссылка не верна. А при установке postgresql 8.2.4 с опциями:
./configure --prefix=/usr
путь до данного файла получается не /usr/lib/pgsql/plpgsql.so , а /usr/lib/postgresql/plpgsql.so
но после
cp /usr/lib/postgresql /usr/lib/pgsql
ошибки при след. действиях dropdb NameDB -> createdb NameDB -> pg_restore -d NameDB backupdb.tar
валиться перестали, осталось только
pg_restore: [archiver] WARNING: don't know how to set owner for object type FUNC PROCEDURAL LANGUAGE

Еще при выполнении psql -f backup template1 обнаружил пару ошибок, след типа:
psql:/backup: ERROR: cannot delete from a view

Не подскажет ли кто, что это значит и насколько серьезна сия ошибка?
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Перенос баз между разными версиями Postgresql / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]