MSSQL2005數據庫自動備份問題(到同一個局域網上的另一台電腦上)


有A數據庫服務器,B本機; 
 
我現在想通過在B機器上通過代碼調用SQL來執行A數據庫的備份到B機器上 
 
調用的SQL語句為:Backup  Database  MYDATABASE  To  Disk= 'D:/test.bak'
,這樣備份的目錄是數據庫服務器A的D盤下; 
 
怎么才能備份到A的D盤下呢? 
 
請各位給予建議,謝謝!
----------------------------------------------------------------------------------------------------
 
要用遠程數據庫可以備份本地。 
本地數據庫也可以備份到遠程。 
 
--備份環境:把數據庫服務器(192.168.1.8)的數據庫(TEST)備份到(192.168.1.145)的C$下 
 
--首先,做一個與客戶端的映射 
exec  master..xp_cmdshell 
'net use z: \\192.168.1.145\c$ "密碼" /user:192.168.1.145\administrator' 
/* --說明: 
z: 是映射網絡路徑對應本機的盤符,與下面的備份對應 
\\192.168.1.145\c$    是要映射的網絡路徑 
192.168.1.145\administrator    
192.168.1.145是遠程的計算機名,administrator是登陸的用戶名 
密碼                        上面指定的administrator用戶的密碼 
--*/ 
 
 
--其次,進行數據庫備份 
backup  database  TEST  to  disk= 'z:\Test.bak' 
 
--最后.備份完成后刪除映射 
exec  master..xp_cmdshell  'net use z: /delete' 
--來自網絡
 
--以下代碼放在作業里做調度,自動備份、自動刪除4天前備份
 
--創建映射
exec  master..xp_cmdshell  'net use w: \DatabaseBackup$  "password"/user:Roy' ,NO_OUTPUT
go
-----2000用游標:
declare  @s nvarchar(200),@del nvarchar(200)
select   @s= '' ,@del= ''
 
declare  datebak  cursor  for
select 
     [bak]= 'backup database  ' +quotename( Name )+ '  to disk =' 'w:' + Name + '_' + convert ( varchar (8),getdate(),112)+ '.bak' '  with 
 
init' ,
     [del]= 'exec master..xp_cmdshell ' ' del w:' + Name + '_' + convert ( varchar (8),getdate()-4,112)+ '.bak' ', no_output' 
from  master..sysdatabases  where  dbid>4  --不備份系統數據庫
open  datebak
 
fetch  next  from  datebak  into  @s,@del
while @@fetch_status=0
     begin
         exec  (@del)
         exec (@s)
         fetch  next  from  datebak  into  @s,@del
     end
close  datebak
deallocate  datebak
go
--刪除映射
exec  master..xp_cmdshell  'net use w: /delete'
 
go
 
 
--用JOB. 
--SQL SERVER2000為例 
 
企業管理器—>數據庫服務器—>管理目錄—>SQL SERVER代理—>作業—>右鍵 選—>新建 
 
常規選項頁—>輸入作業名稱—>選中所有者。 
 
步驟選項頁—>新建—>輸入步驟名—>類型 TSQL腳本—>選擇需要執行的數據庫—>在命令框里輸入你的SQL 腳本: 
 
如: update  tb  set  狀態= ...   where  日期........... 
 
你可以點左下角的【分析】按鈕,分析一下語法,分析無誤,按確定。 
 
調度選項頁—>新建調度—>輸入調度名稱—>調度類型 你可以選擇也可以點右下角的【更改】按鈕進行更改,確定。 
 
任務欄 SQL SERVER服務器的小圖標 雙擊 服務 選中 SQL SERVER AGENT,點【開始/繼續】,選中當啟動OS時,自動啟動服務,就可以了。 
 
到你定的那個時間點,SQL SERVER會自動去執行你的腳本的。 
 
如果需要生成腳本的話,企業管理器—>數據庫服務器—>管理目錄—>SQL SERVER代理—>作業—>右鍵你剛完成的作業—>所有任務 
 
—>生成SQL腳本,即可生成你需要的腳本


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM