Dict.CN 在線詞典, 英語學(xué)習(xí), 在線翻譯

          都市淘沙者

          荔枝FM Everyone can be host

          統(tǒng)計(jì)

          留言簿(23)

          積分與排名

          優(yōu)秀學(xué)習(xí)網(wǎng)站

          友情連接

          閱讀排行榜

          評(píng)論排行榜

          一個(gè)Mysql自動(dòng)備份腳本(轉(zhuǎn))

          可以將這個(gè)腳本放進(jìn)crontab,每天凌晨執(zhí)行一次,自動(dòng)備份這個(gè)腳本每天最多只執(zhí)行一次,而且只保留最近五天的備份在服務(wù)器上。

            代碼:

          #!/bin/bash
          #This is a ShellScript For Auto DB Backup
          #Powered by SearchDatabase
          #2005-09

          #Setting
          #設(shè)置數(shù)據(jù)庫名,數(shù)據(jù)庫登錄名,密碼,備份路徑,日志路徑,數(shù)據(jù)文件位置,以及備份方式
          #默認(rèn)情況下備份方式是tar,還可以是mysqldump,mysqldotcopy
          #默認(rèn)情況下,用root(空)登錄mysql數(shù)據(jù)庫,備份至/root/dbxxxxx.tgz
          DBName=mysql
          DBUser=root
          DBPasswd=
          BackupPath=/root/
          LogFile=/root/db.log
          DBPath=/var/lib/mysql/
          #BackupMethod=mysqldump
          #BackupMethod=mysqlhotcopy
          #BackupMethod=tar
          #Setting End


          NewFile="$BackupPath"db$(date +%y%m%d).tgz
          DumpFile="$BackupPath"db$(date +%y%m%d)
          OldFile="$BackupPath"db$(date +%y%m%d --date='5 days ago').tgz

          echo "-------------------------------------------" >> $LogFile
          echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile
          echo "--------------------------" >> $LogFile
          #Delete Old File
          if [ -f $OldFile ]
          then
             rm -f $OldFile >> $LogFile 2>&1
             echo "[$OldFile]Delete Old File Success!" >> $LogFile
          else
             echo "[$OldFile]No Old Backup File!" >> $LogFile
          fi

          if [ -f $NewFile ]
          then
             echo "[$NewFile]The Backup File is exists,Can't Backup!" >> $LogFile
          else
             case $BackupMethod in
             mysqldump)
                if [ -z $DBPasswd ]
                then
                   mysqldump -u $DBUser --opt $DBName > $DumpFile
                else
                   mysqldump -u $DBUser -p$DBPasswd --opt $DBName > $DumpFile
                fi
                tar czvf $NewFile $DumpFile >> $LogFile 2>&1
                echo "[$NewFile]Backup Success!" >> $LogFile
                rm -rf $DumpFile
                ;;
             mysqlhotcopy)
                rm -rf $DumpFile
                mkdir $DumpFile
                if [ -z $DBPasswd ]
                then
                   mysqlhotcopy -u $DBUser $DBName $DumpFile >> $LogFile 2>&1
                else
                   mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile >>$LogFile 2>&1
                fi
                tar czvf $NewFile $DumpFile >> $LogFile 2>&1
                echo "[$NewFile]Backup Success!" >> $LogFile
                rm -rf $DumpFile
                ;;
             *)
                /etc/init.d/mysqld stop >/dev/null 2>&1
                tar czvf $NewFile $DBPath$DBName >> $LogFile 2>&1
                /etc/init.d/mysqld start >/dev/null 2>&1
                echo "[$NewFile]Backup Success!" >> $LogFile
                ;;
             esac
          fiecho "-------------------------------------------" >> $LogFile

          posted on 2007-09-18 22:54 都市淘沙者 閱讀(186) 評(píng)論(0)  編輯  收藏 所屬分類: Oracle/Mysql/Postgres/

          主站蜘蛛池模板: 泰宁县| 江阴市| 博野县| 龙陵县| 黑山县| 牙克石市| 丰镇市| 西藏| 萨嘎县| 甘洛县| 金川县| 江津市| 常德市| 青岛市| 都兰县| 祁东县| 白玉县| 乐东| 青州市| 长武县| 手游| 十堰市| 永宁县| 喀喇沁旗| 疏附县| 彭泽县| 广安市| 水富县| 五峰| 正定县| 托克托县| 微博| 晋城| 孟连| 忻州市| 贡嘎县| 合山市| 金坛市| 丰台区| 柳江县| 樟树市|