Мониторинг "живой" проверки PostgreSQL имеет тенденцию завершаться ошибкой во время запуска pg_dump, есть ли лучший способ?
Я использую pg_dump для своей основной резервной копии, каждые три часа. Я также использую Монит. Когда monit проверяет, активен ли PostgreSQL во время выполнения pg_dump, он иногда отключается и перезапускает postgres. Это приводит к сбою резервного копирования.
Что делать? Переместить в запись-впереди-журналы? Отключить мониторинг во время резервного копирования? База данных в настоящее время обслуживает активный веб-сайт.
Монит конфиг.:
check process postgres with pidfile /usr/local/pgsql/data/postmaster.pid
group database
start program = "/etc/init.d/postgresql start"
stop program = "/etc/init.d/postgresql stop"
if failed unixsocket /tmp/.s.PGSQL.5432 protocol pgsql then restart
if failed host 127.0.0.1 port 5432 protocol pgsql then restart
if 5 restarts within 5 cycles then timeout
1 ответ
Так как то так?
if failed unixsocket /tmp/.s.PGSQL.5432 protocol pgsql for 5 cycles then restart
if failed host 127.0.0.1 port 5432 protocol pgsql for 5 cycles then restart
if 5 restarts within 25 cycles then timeout
Таким образом, проверка будет недоступна в течение 15 минут до перезапуска. Предполагая интервал в 180 секунд. Очевидно, что вы можете приспособиться к своим вкусам, но сброс после однократной неудачной проверки может привести к ложным срабатываниям, если ваш сервер занят или иным образом занят.