Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PostgreSQL Новый топик    Ответить
 как надо не работает pg_restore  [new]
lr2
Member

Откуда:
Сообщений: 143
Добрый день.

Задача:

Восстановить БД (винда).

Если будет любая ошибка - восстановление прервать и выдать код, отличный от 0.


У pg_restore есть опция

-e
--exit-on-error

Завершать работу в случае возникновения ошибки при выполнении команд SQL в базе данных. По умолчанию процесс восстановления продолжается, а по его окончании выдаётся число ошибок.




Так эта опция не работает, т.к. в логе есть ошибки


pg_restore: [параллельный архиватор] рабочий процесс неожиданно прекратился
pg_restore: [архиватор (БД)] Ошибка при обработке оглавления:
pg_restore: [архиватор (БД)] Ошибка из записи оглавления 4685; 2606 17331 CONSTRAINT...
pg_restore: [архиватор (БД)] could not execute query: ...




А процесс продолжается и остальные объекты пытаются восстановиться, несмотря на ошибки.
5 апр 21, 15:22    [22304537]     Ответить | Цитировать Сообщить модератору
 Re: как надо не работает pg_restore  [new]
lr2
Member

Откуда:
Сообщений: 143
и в итоге получается БД без части констрэйнтов.
5 апр 21, 15:31    [22304547]     Ответить | Цитировать Сообщить модератору
 Re: как надо не работает pg_restore  [new]
lr2
Member

Откуда:
Сообщений: 143
команда была запущена так:

pg_restore.exe --exit-on-error --host localhost -U postgres -j 4 -d bd_name -v -c --if-exists C:\bd.backup
5 апр 21, 15:57    [22304578]     Ответить | Цитировать Сообщить модератору
 Re: как надо не работает pg_restore  [new]
Maxim Boguk
Member

Откуда: Melbourne, Австралия
Сообщений: 4691
lr2,

попробуйте без -j 4 тоже самое


--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
5 апр 21, 19:46    [22304760]     Ответить | Цитировать Сообщить модератору
Все форумы / PostgreSQL Ответить