mysql定时备份shell脚本



mysql定时备份shell脚本 1、linux服务器中指定备份文件目录:
# mkdir /Data/mysqlbackup
cd /Data/mysqlbackup
如果mysql运行在mysql用户和用户组下面
#chown  -R mysql:mysql /Data/mysqlbackup
#chmod -R 775 /Data/mysqlbackup

2、编写备份脚本:
#vi mysql_backup.sh
#!/bin/sh
BackupDir=/Data/mysqlbackup
LogFile=/Data/mysqlbackup/mysql_bak.log
DATE=`date +%Y%m%d%H%M%S`
echo ” ” >> $LogFile
echo ” ” >> $LogFile
echo “——————————————-” >> $LogFile
echo $(date +”%y-%m-%d %H:%M:%S”) >> $LogFile
echo “————————–” >> $LogFile
cd $BackupDir
DumpFile=$DATE.sql
GZDumpFile=$DATE.sql.tar.gz
/usr/local/bin/mysqldump -u user -pname  –database -h 127.0.0.1 db> $DumpFile
echo “Dump Done” >> $LogFile
tar czvf $GZDumpFile $DumpFile >> $LogFile 2>&1
echo “[$GZDumpFile]Backup Success!” >> $LogFile
rm -f $DumpFile

cd $BackupDir
echo “Backup OK!”
echo “please Check $BakDir Directory!”
echo “copy it to your local disk or ftp to somewhere !!!”
find $BackupDir -ctime +7-exec rm {} ;
echo “delete file over 7 days”

备注:其中user,name和db请根据自己的情况修改

保存退出,然后把这个文件赋予可执行的权限:

#chmod +x mysql_backup.sh

3、定制定时备份计划
#crontab -e
每天下午6点30备份:
30 18 * * * /Data/mysqlbackup/mysql_backup.sh