Файл WAL из другой системы баз данных

Я использую WAL E и пытаюсь восстановить базу данных postgresql, я получаю сообщение об ошибке WAL file is from different database system: WAL file database system identifier is 6422218584094261886, pg_control database system identifier is 6338745400937582833

Как я могу заставить базу данных postgresql использовать идентификатор базы данных архива WAL или заставить архив WAL использовать системный идентификатор базы данных базы данных


person danielmwai    schedule 30.06.2017    source источник
comment
Вы не можете воспроизвести WAL из одной установки PostgreSQL в другую (если это не реплика). Если вы действительно действительно знаете, что делаете, вы можете перезаписать идентификатор в целевой базе данных. Поищите подробности в архивах списков рассылки postgresql.org. Я не думаю, что вы знаете, что делаете, иначе вы бы уже просмотрели списки рассылки.   -  person Richard Huxton    schedule 30.06.2017
comment
@RichardHuxton, машина вышла из строя, и у меня были резервные копии файлов WAL в облаке Google, у меня был установлен postgresql 9.6 в Ubuntu, и я только что запустил новый экземпляр и попытался восстановить файлы WAL, некоторые рекомендации были бы очень полезны   -  person danielmwai    schedule 30.06.2017
comment
Пожалуйста, поделитесь командами, которые вы выполняете, чтобы получить указанную выше ошибку. Я сильно подозреваю, что вы неправильно выполняете восстановление WAL-E. Кроме того, не помечайте этот вопрос 3 разными версиями PostgreSQL, которые вы не используете.   -  person FuzzyChef    schedule 01.07.2017
comment
@FuzzyChef Мне удалось восстановить базу данных из базовой резервной копии WAL-E на гугл-диске.   -  person danielmwai    schedule 05.07.2017


Ответы (2)


Чтобы восстановить файлы WAL, вам понадобится ваша исходная базовая резервная копия и все файлы WAL с этого момента. Сами файлы WAL перечисляют изменения в базовой резервной копии.

person Richard Huxton    schedule 01.07.2017
comment
Используя базовую резервную копию WAL-E, хранящуюся в облачном хранилище Google, я смог восстановить все данные. - person danielmwai; 05.07.2017

Вы перемещали каталог данных pg, когда база данных все еще работала?

Была такая же проблема при миграции с одного узла сервера на другой, перемещение каталога данных postgres с помощью scp на другой узел. При запуске контейнера докеров на новом узле я получил эту ошибку в журнале докеров -f. Оказалось, что я копировал каталоги, пока док-контейнер postgres на исходном узле все еще работал.

person Christoph Sauer    schedule 29.06.2019