Можно ли перестроить pg_depend? - PullRequest
0 голосов
/ 16 апреля 2019

У меня есть база данных PostgreSQL 9.4, затронутая следующей ошибкой в ​​ BDR :

https://github.com/2ndQuadrant/bdr/issues/309

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

Есть ли способ заставить PostgreSQL перестраивать зависимости в pg_depend, не перестраивая базу данных с нуля?

1 Ответ

0 голосов
/ 16 апреля 2019

Нет, потому что эта информация не является избыточной (это было бы проблемой).

Вмешательство в ручную с pg_depend может ухудшить ситуацию.

Лучше всего создать дамп только для схемы (pg_dump --section=pre-data) и обрабатывать его вручную, пока вы не сможете загрузить его в новую базу данных (некоторые зависимости все равно будут потеряны, например столбцы, имеющие последовательность).

Как только вы преуспеете в этом, используйте операторы ALTER, чтобы скорректировать дальнейшие зависимости, которые, как вы заметили, отсутствуют.

Как только вы довольны результатом, сбросьте оставшуюся часть базы данных (pg_dump --section=data и pg_dump --section=post-data) и восстановите их в базе данных в указанном порядке.

Боюсь, вы не можете добиться большего успеха, чем это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...