最近我在為公司的架構程式(以資料應用為導向的應用體系)做資料管理模組,這個模組的需求比較簡單:備份、恢複和清理日誌。我公司的軟體基本上以C/S為基本架構,所以資料管理模組中兩個主要的功能'備份與恢複’都可能會在Client端操作,備份與恢複’的檔案也都有可能儲存在client端,因而這個資料管理模組就必須能夠實現在遠程備份與恢複資料庫。
文章的前提闡述完了,就該說說如何具體實現吧。其實都很簡單,我想寫個遠程備份的測試執行個體
給大家看,就能夠很清楚的描述吧!
執行個體說明:
環境:win2k sqlserver 2K 查詢分析器
SQLSERVER服務執行個體名稱:mainserver
需要備份的資料庫名稱: msdb
本地機器名稱(Client端):david
本機使用者:zf 密碼:123
本地區名:domain
本地提供備份需求的檔案夾:e:est
第一步: 建立共用資料夾
在程式碼中調用(或者CMD視窗) net share test=e:est
或者用NetShareAdd這個API
簡要說明:
net share : 是WINDOWS內部的網路命令。
作用:建立本地的共用資源,顯示當前電腦的共用資源資訊。
文法:參見 net share /?
第二步: 建立共用信用關係
master..xp_cmdshell 'net use davidest 123 /user:domainzf'
簡要說明:
1:xp_cmdshell :是SQLSERVER的擴充預存程序。
作用,以作業系統命令列解譯器的方式執行給定的命令字串,
並以文本行方式返回任何輸出。
文法:參見SQLSERVER線上說明
2:net use : 是WINDOWS內部的網路命令。
作用,將電腦與共用資源串連或斷開,或者顯示關於電腦
串連的資訊。該命令還控制持久網路連接。
文法:參見 net use /?
第三步:備份資料庫
backup database msdb to disk='davidestmsdb.bak'
這個不需要說明吧,文法參見SQLSERVER線上說明
第四步: 刪除共用資料夾
http://www.bkjia.com/PHPjc/631075.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/631075.htmlTechArticle最近我在為公司的架構程式(以資料應用為導向的應用體系)做資料管理模組,這個模組的需求比較簡單:備份、恢複和清理日誌。我公司...