Восстановление дампа postgres выдает ошибки: типы не существуют

Восстановление дампа postgres выдает ошибки: типы не существуют

Я сделал дамп базы данных со старой машины Ubuntu с postgresql 8.4 и postgis 1.5. На новой Ubuntu 12.04 я установил Postgresql 9.1 также с postgis 1.5. (создал postgis_template с postgis.sql и spatial_ref_sys.sql).

Когда я восстанавливаю дамп на новой машине, данные создаются, но я получаю 25 сообщений об ошибках, подобных этим

...    

pg_restore: [archiver (db)] Error from TOC entry 711; 1255 18533 FUNCTION gidx_in(cstring) postgres
pg_restore: [archiver (db)] could not execute query: ERROR:  function public.gidx_in(cstring) does not exist
    Command was: DROP FUNCTION public.gidx_in(cstring);

pg_restore: [archiver (db)] Error from TOC entry 34; 1255 17743 FUNCTION geometry_send(geometry) postgres
pg_restore: [archiver (db)] could not execute query: ERROR:  type "geometry" does not exist
    Command was: DROP FUNCTION public.geometry_send(geometry);

pg_restore: [archiver (db)] Error from TOC entry 33; 1255 17742 FUNCTION geometry_recv(internal) postgres
pg_restore: [archiver (db)] could not execute query: ERROR:  function public.geometry_recv(internal) does not exist
    Command was: DROP FUNCTION public.geometry_recv(internal);

pg_restore: [archiver (db)] Error from TOC entry 31; 1255 17740 FUNCTION geometry_out(geometry) postgres
pg_restore: [archiver (db)] could not execute query: ERROR:  type "geometry" does not exist
    Command was: DROP FUNCTION public.geometry_out(geometry);

pg_restore: [archiver (db)] Error from TOC entry 30; 1255 17739 FUNCTION geometry_in(cstring) postgres
pg_restore: [archiver (db)] could not execute query: ERROR:  function public.geometry_in(cstring) does not exist
    Command was: DROP FUNCTION public.geometry_in(cstring);

pg_restore: [archiver (db)] Error from TOC entry 709; 1255 18529 FUNCTION geography_out(geography) postgres
pg_restore: [archiver (db)] could not execute query: ERROR:  type "geography" does not exist
    Command was: DROP FUNCTION public.geography_out(geography);

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

Спасибо! С наилучшими пожеланиями,

Тони

решение1

У вас несколько ошибок.Тынеобходимо внимательно прочитать их, а затем прочитать файл дампа (найти строки, на которые ссылаются ошибки выше, и определить, являются ли места, где возникают эти ошибки, серьезной проблемой или ее можно игнорировать) --МЫМы не можем вам этого сказать, потому что на самом деле не знаем, что важно в вашей среде.

Из того, что я вижу в ваших сообщениях об ошибках, похоже, что ваш файл дампа пытается очистить старое содержимое базы данных ( DROPфункции, типы и таблицы) перед фактической загрузкой данных, поэтому, если вы восстанавливаете систему без существующих данных, вы получите ошибки, когда он попытается удалить несуществующие объекты.
Если это то, что происходит, вам, вероятно, не нужно беспокоиться об ошибках (хотя вы можете захотеть сделать дамп без команд «очистки» для будущего использования, чтобы вы их не получили — см.pg_dumpстраница руководствадля получения информации о том, как это сделать).

Теперь, если вы начинаете получать ошибки при СОЗДАНИИ функций/процедур, они, скорее всего, являются серьезными и требуют расследования и исправления.

Связанный контент