MySQL备份脚本(包含zabbix数据库)
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,需求:按天备份,保留一周,zabbix数据库不备份历史数据MySQL版本:5.7.17脚本:需要提前建立路径mkdir -pv /opt/mysql_backup/auto_backupcat /op
千家信息网最后更新 2025年01月19日MySQL备份脚本(包含zabbix数据库)
需求:按天备份,保留一周,zabbix数据库不备份历史数据
MySQL版本:5.7.17
脚本:
需要提前建立路径mkdir -pv /opt/mysql_backup/auto_backupcat /opt/mysql_backup/mysqlback.sh
#!/bin/bash# 0 3 * * * bash /opt/mysql_backup/mysqlback.sh &>/dev/nullDBUSER=rootDBPASS=**********DATE=`date +%Y-%m-%d`BACKPATH="/opt/mysql_backup/auto_backup"HOSTNAME=`/bin/hostname`MYSQL_BACK_DIR="$BACKPATH/${HOSTNAME}_$DATE"MYSQLDUMP=/usr/bin/mysqldumpMYSQL=/usr/bin/mysqlTAR_DIR=$DATETAR=/bin/tarRM=/bin/rmFIND=/bin/findDSTIP=192.168.100.131#If no directory then create the directoryif [ ! -d $MYSQL_BACK_DIR ];then mkdir -p $MYSQL_BACK_DIRfi#delete 7 day ago file#lock tables#$MYSQL -u$DBUSER -p$DBPASS -h$DBHOST -e "stop slave;"#$MYSQL -u$DBUSER -p$DBPASS -h$DBHOST -e "flush tables with read lock;"#list mysql databases and dump databasefor i in $($MYSQL -u$DBUSER -p$DBPASS -e "show databases\G"|grep Database|grep -v schema|grep -v zabbix|grep -v sys|awk '{print $2}')do cd $MYSQL_BACK_DIR $MYSQLDUMP -u$DBUSER -p$DBPASS --master-data=2 --flush-logs --lock-all-tables --opt --default-character-set=utf8 --extended-insert=false --triggers -R --hex-blob --events $i > $i.sql# $MYSQLDUMP -u$DBUSER -p$DBPASS -h$DBHOST --single-transaction --master-data=2 $i |gzip > $i.sqldone#Backup Zabbix Configuration files.cd $MYSQL_BACK_DIR $MYSQLDUMP -u$DBUSER -p$DBPASS --master-data=2 --flush-logs --lock-all-tables --opt --default-character-set=utf8 --extended-insert=false --triggers -R --hex-blob --events zabbix \--ignore-table=zabbix.alerts \--ignore-table=zabbix.auditlog \--ignore-table=zabbix.auditlog_details \--ignore-table=zabbix.escalations \--ignore-table=zabbix.events \--ignore-table=zabbix.history \--ignore-table=zabbix.history_log \--ignore-table=zabbix.history_str \--ignore-table=zabbix.history_str_sync \--ignore-table=zabbix.history_sync \--ignore-table=zabbix.history_text \--ignore-table=zabbix.history_uint \--ignore-table=zabbix.history_uint_sync \--ignore-table=zabbix.trends \--ignore-table=zabbix.trends_uint > zabbix.sql#unlock tables#tar backfile and rm oldfilecd $BACKPATH$TAR czf $MYSQL_BACK_DIR.tar.gz ${HOSTNAME}_${DATE} > /dev/null 2>&1scp $MYSQL_BACK_DIR.tar.gz $DSTIP:/opt/mysql_backup/auto_backup$RM -rf ${HOSTNAME}_${DATE}$FIND $BACKPATH -mtime +7 -exec $RM -rf {} \;
说明:以上脚本,zabbix数据库单独拎出来了,只需要备份配置表,不需要备份历史数据,如果mysql上没有zabbix数据库, 那一大段可以注释掉,异地备份需要设置免密钥登录,否则scp过程需要人工输入密码,导致执行等待;或者使用expect进行捕捉,自动添加密码(需要先安装expect)过程略。
[lyj@lyj.com mysql_backup]$ pwd/opt/mysql_backup[lyj@lyj.com mysql_backup]$ tree.├── auto_backup│ └── server5_2017-03-06.tar.gz #备份后的文件名称格式为"主机名_日期.tar.gz"├── mysql_backup.sh└── readme1 directory, 3 files
备份
数据
数据库
脚本
历史
历史数据
密码
过程
主机
人工
名称
大段
密钥
异地
文件
日期
格式
注释
版本
路径
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
国家网络安全工作要
给我网络安全奥图画
西城区网络技术咨询优点
目前数据库发展趋势
kms激活服务器法律风险
实现网络安全的源代码
服务器限制上传文件大小
网络安全审计技术手段
数据库中将字符串转换为数字
自觉维护网络安全PPT
网络安全的动画
达内文档开发服务器
网络安全的好坏
校园网络安全专项整治工作总结
谷歌软件开发问题
国内服务器管理工具
推荐网络安全产品
http协议服务器
php访问数据库是后端吗
设计一个学号数据库代码
碧蓝航线渠道服有哪些服务器
采用什么技术保障网络安全
四年级手抄报网络安全图片
多点软件开发商
互联网比赛属于科技文化活动吗
跟随网络技术
网络安全模式下做系统
网络安全值班调休
数据库频繁插入要不要断开连接
衡阳计算机网络技术