mysql备份脚本

MySQL备份脚本

复制代码
#!/bin/bash
# MySQL连接参数
MYSQL_USER=root
MYSQL_PASSWORD="xxxxxxx"
# 备份目录
BACKUP_DIR=/home/mysql_backup
# 要备份的数据库列表(空格分隔)
DB1=testdb1
DB2=mysql
##如果有需要过滤的备份的表



# 保留天数
DAYS_TO_KEEP=7
# 当前日期
DATE=$(date +%Y%m%d)
# 创建备份目录
mkdir -p $BACKUP_DIR/$DATE
# 记录日志
echo "$(date +'%Y-%m-%d %H:%M:%S') - Backup Start" > $BACKUP_DIR/logs/backup-$DATE.log

# 备份数据库 DB1=testdb
echo ---backup $DB1  >> $BACKUP_DIR/logs/backup-$DATE.log
mysqldump --single-transaction --set-gtid-purged=off --master-data=2 --routines --triggers --events -u$MYSQL_USER -p$MYSQL_PASSWORD $DB1 | gzip > $BACKUP_DIR/$DATE/$DB1-full-$DATE.sql.gz

send=`date '+%Y-%m-%d %H:%M:%S'`
if [ $? -ne 0 ];
then
    echo "$send $DB1 数据备份失败" >> $BACKUP_DIR/logs/backup-$DATE.log
    exit -1
else
    echo "$send $DB1 数据备份成功!" >> $BACKUP_DIR/logs/backup-$DATE.log
fi

# 备份数据库 DB2=mysql
echo ---backup $DB2  >> $BACKUP_DIR/logs/backup-$DATE.log
mysqldump --single-transaction --set-gtid-purged=off --master-data=2 --routines --triggers --events -u$MYSQL_USER -p$MYSQL_PASSWORD $DB2 | gzip > $BACKUP_DIR/$DATE/$DB2-full-$DATE.sql.gz

send=`date '+%Y-%m-%d %H:%M:%S'`
if [ $? -ne 0 ];
then
    echo "$send $DB2 数据备份失败" >> $BACKUP_DIR/logs/backup-$DATE.log
    exit -1
else
    echo "$send $DB2 数据备份成功!" >> $BACKUP_DIR/logs/backup-$DATE.log
fi

# 删除旧备份
find $BACKUP_DIR -type d -mtime +$DAYS_TO_KEEP -exec rm -rf {} \;

# 记录日志
echo "$(date +'%Y-%m-%d %H:%M:%S') - Backup End" >> $BACKUP_DIR/logs/backup-$DATE.log
相关推荐
小江的记录本2 小时前
【Java基础】泛型:泛型擦除、通配符、上下界限定(附《思维导图》+《面试高频考点清单》)
java·数据结构·后端·mysql·spring·面试·职场和发展
十六年开源服务商4 小时前
2026服务器配置优化与WordPress运维实战指南
android·运维·服务器
bqq198610264 小时前
MySQL 8与MySQL 5.7的主要区别
数据库·mysql
chushiyunen5 小时前
r树索引、mysql对r树的支持
数据库·mysql
罗超驿5 小时前
16.深入理解数据库事务:从转账场景剖析ACID四大特性与回滚(Rollback)机制
数据库·mysql
音视频牛哥6 小时前
大牛直播SDK(SmartMediaKit)Android平台Unity3D RTSP/RTMP播放器集成实践
android·unity3d·rtsp播放器·rtmp播放器·unity3d rtmp播放器·安卓unity rtsp播放器·安卓unity rtmp播放器
w1wi6 小时前
安卓抓包完全指南(一):从入门到 SSL Pinning 绕过
android·网络协议·ssl
@nengdoudou6 小时前
KingbaseES数据库MySQL模式使用 “GROUP BY“
数据库·mysql
aqi008 小时前
一文理清 HarmonyOS 6.0.2 涵盖的十个升级点
android·华为·harmonyos·鸿蒙·harmony