#!/bin/sh        
        # mysql data backup script
        # by scud 
http://www.jscud.com        # 2005-10-30
        #        
        # use mysqldump --help,get more detail.
        #        
        BakDir=/backup/mysql
        LogFile=/backup/mysql/mysqlbak.log        
        DATE=`date +%Y%m%d`        
        echo " " >> $LogFile
        echo " " >> $LogFile
        echo "-------------------------------------------" >> $LogFile 
        echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile 
        echo "--------------------------" >> $LogFile                 
        cd $BakDir        
        DumpFile=$DATE.sql
        GZDumpFile=$DATE.sql.tgz                
        mysqldump --quick --all-databases --flush-logs 
                --delete-master-logs --lock-all-tables 
                 > $DumpFile                         
        echo "Dump Done" >> $LogFile                
        tar czvf $GZDumpFile $DumpFile >> $LogFile 2>&1         
        echo "[$GZDumpFile]Backup Success!" >> $LogFile         
        rm -f $DumpFile         
        #delete previous daily backup files:采用增量备份的文件,如果完整备份后,则删除增量备份的文件.
        cd $BakDir/daily        
        rm -f *                         
        cd $BakDir                 
        echo "Backup Done!"        
        echo "please Check $BakDir Directory!"        
        echo "copy it to your local disk or ftp to somewhere !!!"        
        ls -al $BakDir
        上面的脚本把mysql备份到本地的/backup/mysql目录,增量备份的文件放在/backup/mysql/daily目录下.