mysql数据库定期备份脚本

1.mysqldatabak.sh文件(/root/)

dbuser=ihsebak
dbpasswd=-----^1998
logfile=/root/mysqldatabak.log
dbname1=**********
dbname2=**********
dbname3=**********
backuppath1=/home/mysqldatabak/iheecenterbak/
backuppath2=/home/mysqldatabak/iheebbsbak/
backuppath3=/home/mysqldatabak/iheewikibak/
#设置iheecenter、iheebbs、iheewiki三个库的参数
newfile1="$backuppath1"ihsecenter$(date +%Y%m%d).tgz
oldfile1="$backuppath1"ihsecenter$(date +%Y%m%d --date='7 daysago').tgz
dumpfile1="$backuppath1"ihsecenter$(date +%Y%m%d).sql
newfile2="$backuppath2"ihsebbs$(date +%Y%m%d).tgz
oldfile2="$backuppath2"ihsebbs$(date +%Y%m%d --date='7 daysago').tgz
dumpfile2="$backuppath2"ihsebbs$(date +%Y%m%d).sql

newfile3="$backuppath3"ihsewiki$(date+%Y%m%d).tgz
oldfile3="$backuppath3"ihsewiki$(date +%Y%m%d --date='7 daysago').tgz
dumpfile3="$backuppath3"ihsewiki$(date +%Y%m%d).sql
echo"---------------------------------------------------------------------------------------">> $logfile
echo $(date +"%Y-%m-%d %h:%m:%s") >> $logfile
//开始备份ihsecenter
if [ -f $oldfile1 ]
then
    rm -rf$oldfile1 >>  $logfile 2>&1
    echo"[$oldfile1]过期文件成功删除!" >> $logfile
else
    echo"没有过期文件!" >> $logfile
fi
if [ -f $newfile1 ]
then
    echo"[$newfile1]备份文件已经存在,不能备份!" >> $logfile
else
    if [ -z$dbpasswd ]
    then
       mysqldump -u $dbuser --opt--default-character-set=gbk  $dbname1 >$dumpfile1
    else
       mysqldump -u $dbuser -p$dbpasswd --opt--default-character-set=gbk  $dbname1 >$dumpfile1
    fi
    cd$backuppath1
    tar czvf$newfile1 *.sql
    echo"备份ihsecenter文件成功!" >> $logfile
    rm -rf$dumpfile1
fi
//开始备份ihsebbs
if [ -f $oldfile2 ]
then
    rm -rf$oldfile2 >>  $logfile 2>&1
    echo"[$oldfile2]过期文件成功删除!" >> $logfile
else
    echo"没有过期文件!" >> $logfile
fi
if [ -f $newfile2 ]
then
    echo"[$newfile2]备份文件已经存在,不能备份!" >> $logfile
else
    if [ -z$dbpasswd ]
    then
       mysqldump -u $dbuser --opt--default-character-set=gbk  $dbname2 >$dumpfile2
    else
       mysqldump -u $dbuser -p$dbpasswd --opt--default-character-set=gbk  $dbname2 >$dumpfile2
    fi
    cd$backuppath2
    tar czvf$newfile2 *.sql
    echo"备份ihsebbs文件成功!" >> $logfile
    rm -rf$dumpfile2
fi
//开始备份ihsewiki
if [ -f $oldfile3 ]
then
    rm -rf$oldfile3 >>  $logfile 2>&1
    echo"[$oldfile3]过期文件成功删除!" >> $logfile
else
    echo"没有过期文件!" >> $logfile
fi
if [ -f $newfile3 ]
then
    echo"[$newfile3]备份文件已经存在,不能备份!" >> $logfile
else
    if [ -z$dbpasswd ]
    then
       mysqldump -u $dbuser --opt--default-character-set=gbk  $dbname3 >$dumpfile3
    else
       mysqldump -u $dbuser -p$dbpasswd --opt--default-character-set=gbk  $dbname3 >$dumpfile3
    fi
   cd  $backuppath3
    tar czvf$newfile3 *.sql
    echo"备份ihsewiki文件成功!" >> $logfile
    rm -rf$dumpfile3
fi

2.debug.sh文件

sh ./mysqldatabak.sh

3.crontab -e(每天凌晨0点10分开始备份)

10 0 * * */root/mysqldatabak.sh   >/dev/null 2>&1

你可能感兴趣的:(sql,mysql,脚本,F#)