При запуске PostgreSQL процесс завершается с ошибкой, данное поведение связано с повреждения файлов pg_xlog.
Полный текст ошибки
1 2 3 4 5 | postgres@pgr_cm FATAL: the database system is starting up database@pgr_cm FATAL: the database system is starting up LOG: invalid primary checkpoint record PANIC: could not locate a valid checkpoint record LOG: startup process (PID 1906) was terminated by signal 6: Aborted |
Восстановление в PostgreSQL 9 или ниже
Останавливаем PostgreSQL
1 | service postgresql stop |
заходим под пользователем postgres
1 | su postgres |
и переходим в директорию bin, к примеру для версии 9.1
1 | cd /usr/lib/postgresql/9.1/bin/ |
Выполняем
1 | ./pg_resetxlog -f /var/lib/postgresql/9.1/main |
далее выходим и запускаем службу
1 2 3 | exit service postgresql start |
Восстановление в PostgreSQL 10 или выше
Останавливаем PostgreSQL
1 | service postgresql stop |
заходим под польователем postgres
1 | su postgres |
и переходим в директорию bin, для примера 11 версия
1 | cd /usr/lib/postgresql/11/bin/ |
Сбрасываем логи командой ниже
1 | ./pg_resetwal /var/lib/postgresql/11/main |
далее выходим и запускаем службу
1 2 | exit service postgresql start |