一、方案一、
- mysql> show slave status\G
- *************************** 1. row ***************************
- Slave_IO_State: Waiting for master to send event
- Master_Host: 192.168.93.16
- Master_User: rep1
- Master_Port: 3306
- Connect_Retry: 60
- Master_Log_File: mysql-bin.000004
- Read_Master_Log_Pos: 1752541
- Relay_Log_File: hy-mysql3-relay-bin.000088
- Relay_Log_Pos: 2339
- Relay_Master_Log_File: mysql-bin.000004
- Slave_IO_Running: Yes
- Slave_SQL_Running: Yes
- Replicate_Do_DB:
- mysql> grant Replication client on *.* to nagios@localhost identified by 'nagios';
- mysql> flush privileges;
- vi /usr/local/nagios/etc/nrpe.cfg
- command[check_mysql_slave]=/usr/local/nagios/libexec/check_mysql_slave
- #!/bin/sh
- declare -a slave_is
- slave_is=($(/usr/local/mysql/bin/mysql -unagios -pnagios -e "show slave status\G"|grep Running |awk '{print $2}'))
- if [ "${slave_is[0]}" = "Yes" -a "${slave_is[1]}" = "Yes" ]
- then
- echo "OK C2-slave is running"
- exit 0
- else
- echo "Critical C2-slave is error"
- exit 2
- fi
- 保存,退出。注意权限执行权限
- chmod +x check_mysql_slave
- chown nagios.nagios check_mysql_slave
- vi /usr/local/nagios/etc/test.cfg
- define service{
- use mail-service
- host_name test
- service_description mysql_slave
- check_command check_nrpe!check_mysql_slave
- }