mysql数据库innodb存储引擎备份脚本
#!/bin/bash
#author:movekj
#descript:backupmysql.fullbackupinsunday,incrementalbackupinotherday.(forInnodbStoreEngine)
#version:0.0.1
###DEFINEVARIABLES
PATH="/usr/java/latest/bin:/usr/lib64/qt-3.3/bin:/usr/java/latest/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"
BackupUser=backuper
BackupPassword=.......1
WorkPath=/home/backup
LogPath=/home/backup/log/
FullBackupPath=/home/backup/full/
IncreBackupPath=/home/backup/incre/
DayOfWeek=`date+%u`
WeekOfYear=`date+%W`
Date=`date+%F`
###DEFINEFUNCTION
CreateBackupPath(){
if[!-d$1$2]
then
mkdir-p$1$2&&echo-e"`date`\033[31m$1$2iscreatesuccessful!\033[0m"#>>$LogPath$WeekOfYear/backup_$Date.log
fi
}
DeleteOldBackup(){
BackupNum=`ls$1|wc-l`
if[$BackupNum-gt3]
then
OldBackupNum=$[$BackupNum-3]
OldBackup=`ls-t$1|tail-$OldBackupNum`###FINDOLDBACKUP
forIin$OldBackup
do
rm-rf$1$I&&echo"`date`$1$Iisdeleted!">>${LogPath}backup_delete.log
done
fi
}
Delete(){
DeleteOldBackup$FullBackupPath###DELETEOLDFULLBACKUP
DeleteOldBackup$IncreBackupPath###DELETEOLDINCREMENTALBACKUP
#DeleteOldBackup$LogPath###DELETEOLDLOGFILE
}
CreateBackupPath$LogPath$WeekOfYear###CREATEBACKUPLOGPATH
CreateBackupPath$FullBackupPath$WeekOfYear##CREATEFULLBACKUPPATH
CreateBackupPath$IncreBackupPath$WeekOfYear###CREATEINCREMENTALBACKUPPATH
###STARTPROGRESS
if[$DayOfWeek-eq1]
then
innobackupex--user=$BackupUser--password=$BackupPassword$FullBackupPath$WeekOfYear2>>$LogPath$WeekOfYear/Full_backup_$Date.log>>$LogPath$WeekOfYear/Full_backup_$Date.log
if[$?-eq0]
then
Delete
fi
elif[$DayOfWeek-eq2]
then
NewestFullBackup=`ls-t$FullBackupPath$WeekOfYear|head-1`###FINDNEWESTFULLBACKUP
innobackupex--user=$BackupUser--password=$BackupPassword--incremental--incremental-basedir=$FullBackupPath$WeekOfYear/$NewestFullBackup$IncreBackupPath$WeekOfYear2>>$LogPath$WeekOfYear/Incre_backup_$Date.log>>$LogPath$WeekOfYear/Incre_backup_$Date.log
if[$?-eq0]
then
Delete
fi
else
NewestIncreBackup=`ls-t$IncreBackupPath$WeekOfYear|head-1`###FINDNEWESTINCREMENTALBACKUP
innobackupex--user=$BackupUser--password=$BackupPassword--incremental--incremental-basedir=$IncreBackupPath$WeekOfYear/$NewestIncreBackup$IncreBackupPath$WeekOfYear2>>$LogPath$WeekOfYear/Incre_backup_$Date.log>>$LogPath$WeekOfYear/Incre_backup_$Date.log
if[$?-eq0]
then
Delete
fi
fi
©著作权归作者所有:来自51CTO博客作者18601962480的原创作品,如需转载,请注明出处,否则将追究法律责任