首页 > 代码库 > MySQL热备份与还原---利用mysqldump---备份脚本

MySQL热备份与还原---利用mysqldump---备份脚本

对extmail数据库进行每天01:00完全热备份,并可以完全恢复!

一、先建立备份脚本,如下:

vi mysql_extmail_bak.sh
#!/bin/bash
# Program
#    use mysqldump to Fully backup mysql data per week!
BakDir=/mysqlback#要备份到的目录
LogFile=/var/log/bak.log#备份记录日志
Date=`date +%Y%m%d`
Begin=`date +"%Y年%m月%d日 %H:%M:%S"`
cd $BakDir
DB=extmail#要备份的数据库名称
DumpFile=$DB$Date.sql
GZDumpFile=$Date.sql.tar.gz
/usr/bin/mysqldump -uroot -p123123 --quick --databases $DB --flush-logs --single-transaction > $DumpFile
/bin/tar czvf $GZDumpFile $DumpFile
/bin/rm $DumpFile
Last=`date +"%Y年%m月%d日 %H:%M:%S"`
echo 开始:$Begin 结束:$Last $GZDumpFile succ >> $LogFile

二、恢复备份sql文件,如下:

cd /mysqlback
tar zxvf extmail20170515.tar.gz
mv extmail20170515.sql extmail.sql
mysql -uroot -p < extmail.sql

附mysqldump参数说明:http://www.cnblogs.com/wxb-km/p/3610594.html 这大哥写得很详细!

MySQL热备份与还原---利用mysqldump---备份脚本