psql, соответственно, ресторнул сначала схему (успешно), потом данные, но уже с ошибкой в одном месте, что мол нет такого столбца.
ERROR: column "another_column_id" of relation "object_on" does not exist
Оказалось, что в bkp схемы действительно не записался один из столбцов одной из таблиц.
В каких случаях pg_dump решает не вставлять в таблицу один из столбцов? Или этого быть не должно и это баг?
т.е. вы делали 2 различных дампа? Если да, то между дампом схемы и дампом данных не добавлялся ли в эту схему новый столбец? Дамп нев ыбирает сам что ему делать, он снимает снимок с того, что вы указываете.
Лучше делать pg_dump ... --section=pre-data..., затем pg_dump ... --section=data..., а потом pg_dump ... --section=post-data... В одном скрипте. 1-я команда вам сделает дамп схемы без индексов и прочих ограничений и ключей, 2-я - дамп данных, 3-я - ключи, индексы и прочие ограничения.
Вроде, не должно такого быть. Какая полная версия PostgreSQL? И ещё, Вы можете показать \d таблицы, и дамп только её схемы?
Обсуждают сегодня