QQ空间迁移_【mysql_30天循环全盘压缩备份脚本】

本文介绍了一个MySQL数据库的定期全盘备份脚本,使用mysqldump进行压缩,并自动删除30天前的备份文件,确保存储效率。通过设置定时任务,每天都会进行一次备份操作并发送邮件通知。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql 30天循环全盘压缩备份脚本

2017-01-07 23:01:37

#MySQL DataBase Full Backup.

# Use mysqldump --help get more detail.

# insidemysql : mysql

set -x

# define data directy

source /etc/profile

mysqlDir=/usr/bin

# defile user,pwd

dataBackupDir=/var/lib/mysql

eMailFile=$dataBackupDir/email.txt

# email

eMail1=XXXXXXXXX@163.com

# backup file

logFile=$dataBackupDir/mysqlbackup.log

#DATE=`date -l`

echo “开始远程完整备份172.16.10.222 mysql的数据库 …” > $eMailFile

echo " 开始时间:$(date +%Y-%m-%d-%H:%M:%S)" >> $eMailFile

cd $dataBackupDir

# defile filename

GZDumpFile=mysql_$(date +%Y%m%d_%H%M%S).sql.gz

/usr/bin/mysqldump  -uroot -p’apexsoft’  -h 172.16.10.222 --default-character-set=utf8 --extended-insert=false --single-transaction --databases kaitai | gzip   > $GZDumpFile

if  [ $?==0 ]

then

echo “结束时间:$(date +%Y-%m-%d-%H:%M:%S)” >> $eMailFile

echo “数据库备份文件名:$GZDumpFile” >> $eMailFile

echo “数据库备份完成!” >> $eMailFile

else

echo “数据库备份失败!!!” >> $emailFile

# send email

cat $eMailFile | mail -s “MySQL Backup” $eMail1

fi

echo “--------------------------------------------------------” >> $logFile

cat $eMailFile >> $logFile

#-ctime表示创建时间,这里表示删除创建时间为多少天之前的文件,也就是结果只保留多少天的数据

find “/var/lib/mysql” -ctime +30 -type f -name “*.sql.gz” -print > deleted.txt

echo -e “delete files:\n” >> $logFile

#循环删除匹配到的文件

cat deleted.txt | while read LINE

do

rm -rf $LINE

echo $LINE>> $logFile

done

echo “--------------------------------------------------------” >> $logFile

评论(0)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值