基于之前的文章方法,加入批處理命令即可實(shí)現(xiàn)自動(dòng)備份。只是由于批處理命令中對(duì)于備份文件的名字按照時(shí)間命名比較特別,所以特別整理一文。
1、復(fù)制date文件夾備份 ============================ 假想環(huán)境: MySQL 安裝位置:C:\MySQL 論壇數(shù)據(jù)庫(kù)名稱為:bbs 數(shù)據(jù)庫(kù)備份目的地:C:\db_bak\ ============================ 新建db_bak.bat,寫(xiě)入以下代碼
*******************************Code Start***************************** net stop mysql xcopy c:\mysql\data\bbs\*.* c:\db_bak\bbs\%date:~0,10%\ /S /I net start mysql *******************************Code End *****************************
然后使用Windows的“計(jì)劃任務(wù)”定時(shí)執(zhí)行該批處理腳本即可。(例如:每天凌晨3點(diǎn)執(zhí)行back_db.bat) 解釋:備份和恢復(fù)的操作都比較簡(jiǎn)單,完整性比較高,控制備份周期比較靈活,例如,用%date:~0,10%。此方法適合有獨(dú)立主機(jī)但對(duì)mysql沒(méi)有管理經(jīng)驗(yàn)的用戶。缺點(diǎn)是占用空間比較多,備份期間mysql會(huì)短時(shí)間斷開(kāi)(例如:針對(duì)30M左右的數(shù)據(jù)庫(kù)耗時(shí)5s左右),針對(duì)%date:~0,10%的用法參考 。
2、mysqldump備份成sql文件 ============== 假想環(huán)境: MySQL 安裝位置:C:\MySQL 論壇數(shù)據(jù)庫(kù)名稱為:bbs MySQL root 密碼:123456 數(shù)據(jù)庫(kù)備份目的地:D:\db_backup\
腳本:
rem *******************************Code Start***************************** @echo off
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%" C:\MySQL\bin\mysqldump --opt -u root --password=123456 bbs > D:\db_backup\bbs_%Ymd%.sql
@echo on rem *******************************Code End*****************************
將以上代碼保存為backup_db.bat 然后使用Windows的“計(jì)劃任務(wù)”定時(shí)執(zhí)行該腳本即可。(例如:每天凌晨5點(diǎn)執(zhí)行back_db.bat)
說(shuō)明:此方法可以不用關(guān)閉數(shù)據(jù)庫(kù),并且可以按每一天的時(shí)間來(lái)名稱備份文件。
通過(guò)%date:~5,2%來(lái)組合得出當(dāng)前日期,組合的效果為yyyymmdd,date命令得到的日期格式默認(rèn)為yyyy-mm-dd(如果不是此格式可以通過(guò)pause命令來(lái)暫停命令行窗口看通過(guò)%date:~,20%得到的當(dāng)前計(jì)算機(jī)日期格式),所以通過(guò)%date:~5,2%即可得到日期中的第五個(gè)字符開(kāi)始的兩個(gè)字符,例如今天為2009-02-05,通過(guò)%date:~5,2%則可以得到02。(日期的字符串的下標(biāo)是從0開(kāi)始的)
3、利用WinRAR對(duì)MySQL數(shù)據(jù)庫(kù)進(jìn)行定時(shí)備份。 對(duì)于MySQL的備份,最好的方法就是直接備份MySQL數(shù)據(jù)庫(kù)的Data目錄。下面提供了一個(gè)利用WinRAR來(lái)對(duì)Data目錄進(jìn)行定時(shí)備份的方法。
首先當(dāng)然要把WinRAR安裝到計(jì)算機(jī)上。
將下面的命令寫(xiě)入到一個(gè)文本文件里
*******************************Code Start***************************** net stop mysql
c:\progra~1\winrar\winrar a -ag -k -r -s d:\mysql.rar d:\mysql\data
net start mysql *******************************Code End*****************************
保存,然后將文本文件的擴(kuò)展名修改成CMD。進(jìn)入控制面版,打開(kāi)計(jì)劃任務(wù),雙擊“添加計(jì)劃任務(wù)”。在計(jì)劃任務(wù)向?qū)е姓业絼偛诺腃MD文件,接著為這個(gè)任務(wù)指定一個(gè)運(yùn)行時(shí)間和運(yùn)行時(shí)使用的賬號(hào)密碼就可以了。 這種方法缺點(diǎn)是占用時(shí)間比較多,備份期間壓縮需要時(shí)間,mysql斷開(kāi)比第一種方法更多的時(shí)間,但是對(duì)于文件命名很好。
|