Восстановление PostgreSQL после повреждения файлов XLOG

Бывают случаи, когда файлы журнала транзакций (pg_xlog) могут быть повреждены или случайно удалены. В таком случае PostgreSQL не сможет работать или не запустится.

Найти поврежденный файл вряд ли получится, поэтому выход один – очистить информацию в БД об используемых логах. Для этого есть штатная утилита pg_resetwal (или pg_resetxlog в более ранних версиях).

Но перед ее использованием надо узнать, что именно очищать в БД. Для этого открываем командную строку, переходим в каталог, куда установлен PostgresSQL и выполняем:

cd /D Е:\Program Files\PostgreSQL 1C\11
.\bin\pg_controldata .\data
Само собой у вас будут другие значения NextXID и NextOID.

Нас интересуют строчки:

NextXID послед. конт. точки:
NextOID послед. конт. точки:

Выполняем:

.\bin\pg_resetwal -o 15194624 -x 31397133 -f "E:\Program Files\PostgreSQL 1C\11\data"

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *