Zabbix监控MySQL备份成功失败
环境:
A:172.16.16.1 (MySQL机器)
B:172.16.16.2 (备份机器)
C:172.16.16.3 (zabbix服务器)
介绍
因公司开发需要,需要备份内网测试数据库A.B.C三个库,在每天凌晨2点打包备份到B机器上面。
计划
1、在B机器上面使用mysqldump配合脚本在本地备份数据库
2、在zabbix机器上面设置监控项,备份不成功则想运维部门发送邮件
1、脚本内容 部署在B机器的/data1/local_backup/mysqlbak/IP里面
#!/bin/sh
messages_dir=/data1/backup/local_backup/mysqlbak/172.16.16.1 /
cd /data1/backup/local_backup/mysqlbak/172.16.16.1 /
Now=$(date +"%d-%m-%Y")
File=web_mysql_172.16.16.1 _3306_$Now.sql
mysqldump -uroot -p'password' -h 172.16.16.1 -B A B C | gzip -9 > /data1/backup/local_backup/mysqlbak/172.16.16.1 /$File.sql.gz
/usr/bin/find ${messages_dir} -name '*web_mysql_172.16.16.1 _3306*' -mtime +7 -exec rm -f {} \;
echo $? > /data1/backup/local_backup/mysqlbak/172.16.16.1 /mysqlbak172.16.16.1.log
2、设置定时任务
[root@git ~]# vi /etc/crontab
00 02 * * * /bin/sh /data1/backup/local_backup/mysqlbak/172.16.16.1 /backup-172.16.16.1.sh
[root@git ~]# /sbin/service crond restart
[root@git ~]# chkconfig –level 35 crond on
3、定义key变量
12 [root@git ~]# cat /usr/local/zabbix_agent/etc/zabbix_agentd.conf | grep "UserParameter"
UserParameter=mysqlbak.log,/bin/cat /data1/backup/local_backup/mysqlbak/172.16.16.1 /mysqlbak172.16.16.1.log
#重启zabbix-agent
4、在主机上面添加模板,调用key变量
5、设置触发器
一些Zabbix相关教程集合:
ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里