Потоковая репликация в PostgreSQL 9.4

Недавно мы установили потоковую репликацию на нашем сервере Postgres (t01, t02). t01 - ведущий, а t02 - ведомый. Я хочу понять следующие две проблемы:

  1. Недавно наш /var каталог на сервере t01 заполнился, и команда разработчиков не смогла получить доступ к приложению. Насколько я понимаю, если t01 /var был заполнен, соединение должно быть выполнено с t02, и приложение должно начать использовать его, поскольку t02 /var не был заполнен.

  2. Если мы отключим сервер t01, будет ли мое приложение автоматически использовать базы данных t02, потоковая репликация в этом случае обеспечит высокую доступность или нет?


person SinghVK    schedule 28.11.2018    source источник
comment
Этот вопрос не по теме SO. Спросите на dba.stackexchange.com   -  person Roman Konoval    schedule 28.11.2018


Ответы (1)


Нет, PostgreSQL не переключится на резервный. Правильная настройка аварийного переключения - сложная проблема, и для ее решения вам потребуется специализированное программное обеспечение для кластеров, такое как Patroni.

Как бы то ни было, вам придется вручную выполнить отработку отказа, запустив pg_ctl promote на резервном сервере, чтобы это сделать.

Вам также нужно будет настроить своих клиентов на использование нового сервера. Чтобы избежать этого, вы можете использовать виртуальный IP-адрес, который вы можете переместить в резервный, или вам нужно настроить клиентов, чтобы попробовать оба сервера.

person Laurenz Albe    schedule 28.11.2018