晓夏

小皇

教育信息化方案砖家

centos 自动备份

浏览量:126

#!/bin/sh
DB_USER="ma"
DB_PASS="ma@123"
BIN_DIR="/usr/bin"
BACK_DIR="/root"
LogFile="$BACK_DIR"/bakup.log #日志记录保存的目
DB_NAME="mayuan"
DATE="$DB_NAME-`date +'%Y%m%d-%H%M%S'`"
BackNewFile=$DATE.sql
$BIN_DIR/mysqldump --opt --force -u$DB_USER -p$DB_PASS $DB_NAME > $BACK_DIR/$DATE.sql
echo  createFile:"$BackNewFile" >> $LogFile
# backup files of website
today="`date +%Y%m%d`"
filename="mayuan.home.${today}.tar.gz"
tar -zcvf /root/${filename} /opt/ma
echo  createFile:"$filename" >> $LogFile
#-ctime表示创建时间,这里表示删除创建时间为多少天之前的文件,也就是结果只保留多少天的数据
find "/root/" -ctime +30 -type f -name "*.sql" -print > deleted.txt
find "/root/" -ctime +30 -type f -name "*.tar.gz" -print > deleted.txt
echo -e "deleteFiles:\n" >> $LogFile
#循环删除匹配到的文件
cat deleted.txt | while read LINE
do
    rm -rf $LINE
    echo $LINE>> $LogFile
done
echo "---------------------------------------------------"$(date +"%y-%m-%d %H%M%S")"---" >> $LogFile


神回复

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。