1, Громозека (?), 10:08, 14/11/2014 [ответить] [к модератору]
| +/– |
show slave status не всегда говорит правду. На личном опыте проверено. Для гарантированного мониторинга стоит использовать дополнительную табличку где автоинкрементом раз в N минут увеличивать поле, и сравнивать его значение с значением на slave серверах.
| |
3, имя (?), 09:01, 17/11/2014 [ответить] [к модератору]
| +1 +/– |
> grep $1 | awk '{ print $2 }' | head -n 1
awk "/$1/ {print \$2; exit}"
| |
4, McLeod095 (ok), 12:52, 18/11/2014 [ответить] [к модератору]
| +/– |
Костыль на костыле и с велосипедом.
В поставке zabbix-agent поставляется шаблон для мониторинга mysql. В CentOS лежит примерно тут
/usr/share/doc/zabbix20-agent-2.0.11/userparameter_mysql.conf
Создаем .my.cnf в хомяке zabbix и в файл параметров добавляем строки
UserParameter=mysql.master[*], HOME=/var/lib/zabbix mysql -e "show master status\G" | awk '/'$1'/{print $$2}'
UserParameter=mysql.slave[*], HOME=/var/lib/zabbix mysql -e "show slave status\G" | awk '/'$1'/{gsub(/NULL/,"99999",$$2); print $$2}'
И этого достаточно для просмотра show slave status
Ну и можно еще
UserParameter=mysql.replication, HOME=/var/lib/zabbix mysql -BNe "SELECT ABS(TIMESTAMPDIFF(SECOND,replication_date,(SELECT replication_date FROM system_monitor.master_status))) FROM system_monitor.slave_status;"
только создать базу и сделать автоинкремент даты уже скриптами.
| |
|