У меня есть удаленная установка Postgres DB версии 10.8 в Linux. Я пытаюсь создать резервную копию на компьютере с Windows, используя postgres 9.6.12.
pg_dump --host dahost --port 5432 --username "postgres" --no-password --format tar --blobs --verbose --file "path\noury.backup" "highlands_wastewater"
Я получаю эти ошибки
pg_dump: server version: 10.8 (Ubuntu 10.8-0ubuntu0.18.04.1); pg_dump version: 9.6.12
pg_dump: aborting because of server version mismatch
Как я могу сделать резервную копию этой базы данных удаленно?
Как говорится в сообщении об ошибке, вы не можете использовать более старую версию pg_dump
с более новой версией PostgreSQL.
Причина этого в том, что PostgreSQL 9.6 не умеет правильно создавать дамп базы данных v10 — в более новой версии могут быть новые функции (например, секционированные таблицы).
Вам нужно будет установить PostgreSQL v10 или более позднюю версию на свой компьютер с Windows (именно v10, если вы хотите иметь возможность восстановить дамп в исходную базу данных).
Не используйте формат tar
. Формат custom
предлагает больше преимуществ.