у меня есть база данных postgres (версия 9.4) с потоковой репликацией (master, slave configuration). Вызовем master db A и slave db B.
сервер под управлением не удалось, и мы должны были сделать переключение, где мы способствовали B, чтобы быть новым хозяином.
До сих пор все хорошо и работает нормально.
Теперь я восстановил сломанный сервер и хочу снова настроить репликацию, чтобы быть новым ведомым.
Итак, я беру резервную копию из B, помещаю ее в сервер A, настраиваю восстановите файл и запустите его. Проблема здесь в том, что это на самом деле больше не работает, так как говорит, что они находятся в двух разных временных линиях.
вот сообщения от (нового ведомого):
2015-10-30 14:28:04 LOG: database system was shut down in recovery at 2015-10-30 14:27:28 CET
2015-10-30 14:28:04 LOG: entering standby mode
2015-10-30 14:28:04 LOG: redo starts at 1A/5802B1A8
2015-10-30 14:28:04 LOG: consistent recovery state reached at 1A/581FA248
2015-10-30 14:28:04 LOG: record with zero length at 1A/581FA248
2015-10-30 14:28:04 LOG: database system is ready to accept read only connections
2015-10-30 14:28:05 LOG: started streaming WAL from primary at 1A/58000000 on timeline 2
2015-10-30 14:28:07 ERROR: requested starting point 19/FE000000 on timeline 1 is not in this server's history
2015-10-30 14:28:07 DETAIL: This server's history forked from timeline 1 at 19/FDCF9BA0.
2015-10-30 14:28:12 ERROR: requested starting point 19/FE000000 on timeline 1 is not in this server's history
2015-10-30 14:28:12 DETAIL: This server's history forked from timeline 1 at 19/FDCF9BA0.
моя файл восстановления выглядит так:
standby_mode = 'on'
primary_conninfo = 'host=serverB port=5432 user=replication-user'
restore_command = 'copy "Z:pg_xlog%f" "%p"'
archive_cleanup_command = '"C:Program FilesPostgreSQL9.4binpg_archivecleanup" "Z:pg_xlog" "%r"'
trigger_file = 'Z:triggerpgsql.trigger.sekasto021'
recovery_target_timeline = 'latest'
Google я нашел почти тот же вопрос здесь но без ответов.
Найдена страница из Майкл Пакье кто описывает, что со мной происходит (хотя он говорит, что это не проблема от версия 9.3). Он говорит:
FATAL: timeline 2 of the primary does not match recovery target timeline 1
Это может быть решена только путем копирования сегментов WAL от мастера
узел или использование архива WAL.
но, к сожалению, я не знаю, что он имеет в виду, копируя сегменты wal от мастера с помощью настенного архива.
любая помощь/рекомендации приветствуются.
Спасибо
обновление: я написал этот вопрос на stackoverflow и попросили поставить его сюда вместо