Postgresql: невозможно восстановить схему из pg_dump - PullRequest
0 голосов
/ 25 июня 2019

Я пытаюсь переместить схему из одной базы данных в другую, используя pg_dump. Я запускаю эту команду, чтобы сделать резервную копию моей схемы

pg_dump.exe -h myhost -U postgres -d mydb-n schema> C:\Temp\schema.dump

Чтобы восстановить его, я копирую SQL в pgadmin, но я получаю эту ошибку. Я не знаю, в чем проблема?

ERROR:  syntax error at or near "2"
LINE 284: 2 \N  Unregistered. Item  \N  2016-07-13 00:00:00 \N

Есть ли лучший рекомендуемый способ резервного копирования / восстановления базы данных postgres? Я часто сталкиваюсь с подобными проблемами при резервном копировании / восстановлении баз данных и начинаю беспокоиться, что однажды потерю ценные данные.

1 Ответ

2 голосов
/ 25 июня 2019

Простой текст pg_dump невозможно восстановить с помощью pgAdmin, поскольку pgAdmin не может выполнить COPY FROM STDIN, который используется pg_dump для данных по умолчанию.

Для восстановления дампа вам придется использовать psql.

Альтернативой может быть использование опции --inserts, равной pg_dump, чтобы данные выводились как INSERT statrments. Это идет с ухудшением производительности, хотя.

...