利用批處理及計劃任務實現服務器間的數據自動備份

由於遇到過幾回服務器硬盤損壞的經歷,其中有一次還丟了很多數據,這幾天一直在考慮實現兩臺服務器間的數據自動備份的問題,也嘗試了很多軟件,但不是軟件須要註冊,就是軟件很差用,結合到前一段時間常常使用的批處理及計劃任務,感到這個東西用起來還真是方便。因而便有了如下結合命令行格式的FTP命令及windows系統自帶的計劃任務來實現服務器間的數據的自動備份(實際上我所看的幾款所謂的服務器間實現備份或同步的軟件,也都是使用了FTP的方式。),此方法也能夠用於實現網站間的數據同步。最重要的是,本方法不須要任何軟件及寫註冊表,徹底綠色,操做簡單,並且文件體積僅僅須要幾K!

如下介紹具體方法:
固然首先要有服務器的徹底控制權限,另外一臺服務器的FTP空間的用戶名和密碼。
在此假設要備份數據的服務器爲:服務器一 備份到另外一臺服務器:服務器二
首先在服務器一上創建backup.ftp文件(這裏假設保存至C:\backup.ftp),文件內容以下:

open 61.156.*.*  //Your Ftp Server 你要備份到的服務器的ip
user backup       //Your Ftp username
*************//Your Ftp password
lcd d:\backup     
bin
prompt
mput *.*
bye
quit
exit

再創建backup.bat的批處理文件,文件內容以下:

ftp -n -s:"c:\backup.ftp"

      而後再打開計劃任務,在計劃任務當中添加該批處理文件,並設定執行時間,執行時間最好是在服務器空閒的時候,好比凌晨2點。設置好後,最好運行一次,一來能夠檢查是否能正確運行,二來若是你的服務器上裝有防火牆,這樣便會提示是否容許ftp鏈接網絡,點下容許,這樣以後就至關於把防火牆也設置好了。

添加計劃任務:

設定計劃任務時間:


    另一點要注意的幾點問題是:須要備份的文件在備份期間要保證文件未在使用,好比我想要備份的是SQL Server數據庫文件,能夠在SQL Server企業管理器數據維護計劃中設定自動備份,備份到設定的自動備份目錄,在該備份操做執行完成以後,再進行該服務器間的備份操做。例如設定SQL Server數據庫自動備份的時間爲凌晨1點,即可以在該操做完成後,好比在凌晨2點再利用該批處理執行服務器間的數據備份。

SQL Server中設置維護計劃備份數據庫:


  

    再次,此方法也不單單侷限於服務器到服務器之間,好比若是你樂意,徹底能夠想成是服務器到你的PC機之間(把上面批處理當中的mput換成是mget,也就是從服務器下載文件),在CMOS中設置如下你的PC機,好比凌晨2點自動開機,若是是寬帶,設置爲自動鏈接寬帶網絡,設置批處理爲計算機啓動後幾分鐘內執行,根據所要下載的文件大小設定一下時間,好比半個小時,任務完成後自動關機。這樣就能夠在睡覺的時候便作好備份工做了,徹底不要人的干預。

    如下是我在幾臺服務器間應用的截圖,因爲服務器到服務器之間的速度是很是快的,因此備份幾百兆的文件也不會用太多的時間。

備份成功:


備份成功:


能夠看到網絡應用40%(速度大約5M/s,夠快吧 ):

文章轉載於 [url]http://www.xpb.cn[/url]
相關文章
相關標籤/搜索