Назад | Перейти на главную страницу

репликация postgreSQL и отработка отказа с помощью repmgr в Ubuntu

Я новичок в Linux, и мне было поручено настроить резервный сервер Linux DB с PostgreSQL. предпочтительно, чтобы переключение было автоматическим, но пока подойдет и ручной процесс.

На данный момент я установил два идентичных сервера БД на Ubuntu 11.10 с PostgreSQL 9.1 и repmgr1.1.0, выполнив действия, описанные на 2ndQuadrant.

Единственная проблема в том, что это только для репликации, которая работает нормально, спасибо 2ndQuadrant. Теперь я хочу протестировать аварийное переключение, выключив главную БД и переведя горячий резерв в мастерскую, но это не удается с sh: pg_ctl: not found а затем, что служба postgreSQL не может быть запущена.

Моя установка postgreSQL по умолчанию устанавливается через apt-get и настраивается для master-hot_standby. пожалуйста, не мог бы кто-нибудь помочь мне настроить простую репликацию postgresql между 2 серверами с пошаговым переключением HA.

На этот вопрос уже поздно отвечать. Тем не менее на прошлой неделе я столкнулся с этой проблемой и не смог найти ответ в контексте "репмгр".

pg_ctl находится в каталоге bin вашей установки Postgres. Каталог bin отсутствует в ДОРОЖКА переменная окружения. Вы также не можете установить переменную среды, что делает эту проблему сложной.

Вы должны указать pg_bindir переменная в вашем repmgr.conf файл, который решает эту проблему. Добавьте следующую строку, обновив путь в вашем файле conf.

pg_bindir = / путь / к / postgres / bin

Только что заметил этот вопрос без ответа ... но обычно вы хотите запустить pg_ctl как пользователь postgres

Это в

/usr/lib/postgresql/9.2/bin/pg_ctl

Это если вы используете 9.2, поэтому ваша версия может отличаться.