zabbix数据库备份
该脚本要是用于日常备份zabbix数据库,当出现故障后zabbix能快速恢复。1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#/bin/sh
:<< Statement
| Function : TO BACK ZABBIX DB EXCEPT HISTORY* TREND*
| version: DEV
| mail : 714810243@qq.com
| date : 2016-07-19
Statement
MysqlCMDPath='/usr/bin/mysql'
DumpCMDPath='/usr/bin/mysqldump'
DumpDBUser='zabbix'
DumpDBPasswd='xxxx'
DataBaseName=zabbix
BackFileDirPath='/home/zabbix/DBBACK'
BackFileDirName=`date +%Y%m%d`
function MysqlDump()
{
[ -d ${BackFileDirPath}/${BackFileDirName} ] || mkdir -p ${BackFileDirPath}/${BackFileDirName}
Table_Name_All=`${MysqlCMDPath} -u${DumpDBUser} -p${DumpDBPasswd} ${DataBaseName} -e"show tables;" | egrep -v "Tables_in_zabbix|history*|trends*|events*"`
for Table_Name in ${Table_Name_All}
do
${DumpCMDPath} -q --skip-opt -u${DumpDBUser} -p${DumpDBPasswd} ${DataBaseName} ${Table_Name} > ${BackFileDirPath}/${BackFileDirName}/${Table_Name}.sql
done
if [ "$?" == 0 ] ; then
echo "${BackFileDirName} : BackUp zabbix successed" >> ${BackFileDirPath}/zabbixback.log
else
echo "${BackFileDirName} : BackUp zabbix not successed" >> ${BackFileDirPath}/zabbixback.log
fi
rm -rf ${BackFileDirPath}/`date +%Y%m%d --date='7 days ago'`
}
MysqlDump
该脚本多处参考hao哥(itnihao)的思路,多谢hao哥。
页:
[1]