У меня есть (производственный) сервер БД, на котором работает PostgreSQL v9.0, и машина для разработки, на которой работает PostgreSQL v8.4. Я хотел бы сделать дамп производственной БД и использовать его на машине разработки. Я не могу обновить postgres на машине разработчика.
На производственной машине я запускаю:
pg_dump -f nvdls.db -F p -U nvdladmin nvdlstats
На машине разработки я запускаю:
pg_restore -d nvdlstats -U nvdladmin nvdls.db
И я получил эту ошибку:
pg_restore: [archiver] unsupported version (1.12) in file header
Это происходит независимо от того, выбираю ли я формат custom, tar или plain_text при дампе.
Я нашел одно обсуждение в Интернете, в котором предлагается использовать более новую версию pg_restore
на машина разработчика. Я попробовал это, просто скопировав двоичный файл 9.0 на машину разработчика, но это не удалось (не неожиданно) из-за проблем с компоновкой.
Я думал, что смысл использования дампа простого_текста в том, что это будет сырой, переносимый SQL. Очевидно нет.
Как я могу получить 9.0 DB в моей установке 8.4?