這是一個很常見的需求,網上也有相關的解決方法,主要是通過映射網絡盤和執行cmdshell命令來實現,他們的不好處在於數據重復傳遞
今天所說的實現方法利用SQL Server服務帳號模式和安全機制來訪問網絡途徑,方法如下:
1:要實現異地備份,必須使用域用戶帳號來啟動SQL Server服務以及SQL Server Agent服務,因為本地系統帳戶無法訪問網絡。在計算機管理服務裡找到這兩個服務,將登錄賬號改為域用戶,注意密碼也要錄入,如果以後這個域用戶的密碼更改了,記得這裡也要改,否則這兩項服務無法啟動。
2:在異地機器中建立一個共享文件夾,並設置合適權限。
3:在SQL Server服務器中建立異地備份的維護計劃,在“完全備份”和“事務日志備份”中,使用輸入異地共享文件夾的UPN路徑。
4:配置好維護計劃中其它設置。
如果還不保險,需要在異地網絡(非局域網)備份,如中國備份到美國,由於數據庫文件較大,可壓縮空間很大。那就要對數據壓縮利用FTP傳送,方法如下:
一、利用任務計劃+RAR實現自動壓縮
對要備份的文件或文件夾右擊,選擇"添加到壓縮文件…"
1、備份,勾選“按掩碼產生壓縮文件名”,可改為“yyyymmdd”
2、高級,勾選“後台壓縮”
3、常規,浏覽,並選擇要保存的地點
4、常規,配置,選擇“保存當前設置為新配置”,在配置參數中將配置名改為“壓縮文件”,勾選“保存選定文件名”,此時在桌面創建快捷方式變亮,同樣勾選上。同時將保存壓縮文件名和立即執行也勾選上,桌面上即多了一個“壓縮文件”的快捷方式。雙擊它可手動壓縮。
打開任務計劃,開始--程序--附件--系統工具--任務計劃,空白處右擊,新建計劃任務,改名為“自動壓縮”。
右擊桌面上“壓縮文件”快捷方式,復制目標地址。雙擊任務計劃裡的“自動壓縮”任務,在運行裡粘貼上該地址,應用時會要求輸入當前用戶的密碼;日程安排自行設定
二、利用FTP自動傳送到目的地
下面要進行FTP上傳,假定我們要上傳的文件在d:/ftptmp文件夾下,服務器是ftp://10.0.0.2,帳號cd,密碼123,服務器中的指定文件夾是xd,具體分三個文件步驟操作。分別寫以下幾個文件:
1)建ftprun1.bat內容如下:
FTP -i -s:ftpput.txt
2)建ftpput.txt內容如下:
open 10.0.0.2
cd
123
cd xd
mput d:/ftptmp/*.rar
bye
3)建ftprun2.bat內容如下
del d:/ftptmp/*.rar
以上三步的操作思路是,第1和2聯合動作,實現將文件上傳到服務器的指定文件夾中,第3是實現將本地的該文件刪除。
4、任務計劃的時間安排上就分別是:1、拷貝文件;2、壓縮文件;3、上傳文件;4、刪除文件 。
任務計劃中按以上步驟靈活安排好相關時間運行即可,開始有點麻煩,以後就省心省事了。
第二種方法:
這是一個很常見的需求,網上也有相關的解決方法,主要是通過映射網絡盤和執行cmdshell命令來實現!今天所說的實現方法稍有不同,思路來源於最近在深入研究的SQL Server服務帳號模式和安全機制,相關文章見Blog!本文對SQL Server 2000環境中具體實現方法做相關闡述,對於SQL Server 2005,實現辦法相同!
一:基本思路
1:要實現異地備份,必須使用域用戶帳號來啟動SQL Server服務以及SQL Server Agent服務,因為本地系統帳戶無法訪問網絡。
2:在異地機器中建立一個與SQL Server服務器中啟動SQL Server服務的域用戶帳號同名帳號,且密碼保持相同。在異地機器中建立一個共享文件夾,並設置合適權限。
注意:新建帳號針對的是工作組模式,如果是基於域模式,那就無須再建帳號
3:在SQL Server服務器中建立異地備份的維護計劃,在“完全備份”和“事務日志備份”中,使用輸入異地共享文件夾的UNC路徑。
4:配置好維護計劃中其它設置。
上面表述可能不太直觀,下面以實際實驗來演示如何做異地備份。實驗網絡模型很簡單,如下圖:
二:異地備份的演示
1:在SQL Server服務器中以域用戶帳戶啟動SQL Server服務以及SQL Server Agent服務。
本實驗中直接使用administrator帳戶,可以根據實際環境切換其它域用戶帳戶。
2:在文件備份服務器中建立一個共享文件夾,共享權限中刪除everyone用戶,加入administrator用戶,權限設置如下圖。
3:在SQL Server服務器中,打開企業管理器,新建數據庫維護計劃:
4:在維護計劃向導中,選擇計劃備份的數據庫,設置好數據庫優化信息和檢查完整性等步驟。
5:在向導的“指定數據庫備份計劃”設置好調度計劃。
6:在“指定備份磁盤目錄”界面,手動輸入文件備份服務器共享文件夾UNC路徑。
7:在“事務日志備份計劃”界面,根據實際環境決定如何備份。
8:按向導設置好其它步驟,完成異地備份維護計劃。
三:測試異地備份是否成功。
1:檢查共享文件夾中備份文件是否存在。
2:如果沒有備份成功,請查看SQL Server日志,並檢查權限設置以及用戶名和密碼是否完全一致。
本文出自 “我兒子真帥!” 博客
第三種方法:
其實有種方法就是先本地備份,然後通過rsync或一些ftp同步工具同步也可以。