Я обновляю Postgres с древних 7.4 до 9.4.1 и вижу некоторые ошибки.Обновление с Postgres 7.4 до 9.4.1
На старой машине, я сделал:
pg_dumpall | gzip > db_pg_bu.gz
На новой машине я сделал:
gunzip -c db_pg_bu.gz | psql
При восстановлении я получил целый ряд ошибок, которые я не понимаю, и не знаю важность. Я не администратор базы данных, просто скромный разработчик, поэтому, если кто-то может помочь мне понять, что мне нужно сделать, чтобы выполнить эту миграцию, я был бы признателен.
Вот ошибки:
ERROR: cannot delete from view "pg_shadow"
DETAIL: Views that do not select from a single table or view are not automatically updatable.
HINT: To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule.
Я также получил около 15 из них:
NOTICE: SYSID can no longer be specified
И это, хотя это выглядит безвредны, так как я видел plpgsql по умолчанию устанавливается с указанием в версии 9.2 :
ERROR: could not access file "/usr/lib/postgresql/lib/plpgsql.so": No such file or directory
SET
NOTICE: using pg_pltemplate information instead of CREATE LANGUAGE parameters
ERROR: language "plpgsql" already exists
Большая проблема заключается в том, что, поскольку он восстанавливает базы данных, для каждого ne я вижу нечто hing вот так:
COMMENT
You are now connected to database "landrush" as user "postgres".
SET
ERROR: could not access file "/usr/lib/postgresql/lib/plpgsql.so": No such file or directory
Я уверен, что большинство из них могут быть исправлены с помощью Google. [проблема plpgsql] (http://stackoverflow.com/questions/8680870/notice-using-pg-pltemplate-information-instead-of-create-language-parameters), [WITH SYSID] (https: //www.postgresql .org/message-id/016201c60649 $ c6254b70 $ 0264a8c0 @ demolish1) удален и может потребовать изменения кода для его запуска и запуска. В зависимости от вашего опыта работы с PostgreSQL, возможно, стоит связаться с вашим местным администратором баз данных или задать отдельные и как можно более конкретные вопросы (например, предоставление MVCE и т. Д.). – tambre
@tambre мой код не использует SYSID. Это сообщение об ошибке возникает до того, как psql подключается к любой базе данных. Так кажется, что какая-то системная вещь. –