這裡提供兩種方法:
1,寫成存儲過程,建立作業定時備份
--在sql中映射一下
exec master..xp_cmdshell 'net use z: \\computer_name\D$ "密碼" /user:computer_name\administrator'
/*--說明:
z:是映射網絡路徑對應本機的盤符,與下面的備份對應
\\computer_name\D$是要映射的網絡路徑
computer_name是遠端的計算機名,
administrator是登陸的使用者名
密碼 指定的administrator使用者的密碼
--*/
--備份;with init覆寫 ¦noinit添加
backup database 庫名 to disk='E:\H_BACKUP.bak' with init
--COPY
exec master..xp_cmdshell 'copy E:\H_BACKUP.bak z:'
--删除(這句可以去掉)
--exec master..xp_cmdshell 'del E:\H_BACKUP.bak'
--完成後删除映射
exec master..xp_cmdshell 'net use z: /delete'
2,排程
企業管理器 --管理 --SQL Server代理 --右鍵作業 --建立作業 --"正常"項中輸入作業名稱 --"步驟"項 --建立 --"步驟名"中輸入步驟名 --"類型"中選擇"Transact-SQL 腳本(TSQL)" --"資料庫"選擇執行指令的資料庫 --"指令"中輸入要執行的語句:
declare @strsql varchar(1000)
declare @strdirname varchar(50)
declare @strcmd varchar(50)
declare @strsend varchar(1000)
declare @strdate varchar(50)
exec master..xp_cmdshell 'net use \\192.168.0.151\d$ Password /user:192.168.0.151\administrator'
set @strsql='backup database new_his to disk=''\\192.168.0.151\d$\serverd\'
set @strdirname=replace(substring(convert(varchar(20),getdate(),120),1,10),'-','')+'12'
set @strcmd='md \\192.168.0.151\d$\serverd\' s
et @strcmd=@strcmd+@strdirname
exec master..xp_cmdshell @strcmd
--print @strsql
set @strsql=@strsql+@strdirname+'\new_hisbackup.dat'' with init,nounload,noskip,noformat' -
-print @strsql
exec (@strsql)
----其中寫的IP位址及共享目錄,網友自行修改,Password一定要正确 --确定 --"排程"項 --建立排程 --"名稱"中輸入排程名稱 --"排程類型"中選擇你的作業執行安排 --如果選擇"反複出現" --點"更改"來設定你的時間安排 然後将SQL Agent服務啟動,并設定為自動啟動,否則你的作業不會被執行 設定方法: 我的電腦--控制台--管理工具--服務--右鍵 SQLSERVERAGENT--屬性--啟動類型--選擇"自動啟動"--确定.
本文轉自9pc9com部落格,原文連結: http://blog.51cto.com/215363/864162 如需轉載請自行聯系原作者
<a href="http://blog.51cto.com/search/result?q=%E5%A6%82%E4%BD%95" target="_blank">如何</a>