更新时间:2022-09-17 08:10:51
环境:
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里面
1
2
3
4
5
6
7
8
|
#!/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、设置定时任务
1
2
3
4
|
[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变量
1
2
|
[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、设置触发器
本文转自 好笔记运维 51CTO博客,原文链接:http://blog.51cto.com/zhang789/1753419,如需转载请自行联系原作者