由于項目需要,需要對目标伺服器上的資料庫每天進行備份并轉移,查閱網上的一些幫助,結合自己的實際需要,寫了這篇文章,希望對有同樣需求的朋友有所幫助。目标伺服器:192.168.1.197,備份伺服器:192.168.0.194
1、在備份伺服器上建立一個檔案夾(我的是C:\DbBackupTest),首先要确定對備份伺服器要有足夠的權限(權限設定如下圖所示),最好是“Administrators”組賬戶。其次 到備份伺服器上,打開組政策->計算機配置->Windows設定->安全設定->本地政策->安全選項->網絡通路:本地賬戶的共享和安全模式->經典-本地使用者以自己的身份驗證。
2.1、在目标伺服器上打開Sql Server 2005,建立一個作業,然後建立一個“步驟”(如下圖所示),指定目标資料庫後,編寫如下腳本(注意空格和反斜線),然後點選“确定”,完成第一步。
--開啟xp_cmdshell
EXEC sp_configure 'show advanced options', 1;RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;
--建立連接配接
Exec xp_cmdshell 'net use \\192.168.0.194\DbBackupTest "這裡填寫備份伺服器的登入密碼"/user:192.168.0.194\administrator'
--備份資料庫
Declare @Path Nvarchar(200)
Set @Path = '\\192.168.0.194\DbBackupTest\DigitalGolf_New_' + Convert(Nvarchar,Getdate(),112) + '.bak'
Backup Database DigitalGolf_New
To disk = @Path
With Format
--斷開連接配接
Exec xp_cmdshell 'net use \\192.168.0.194\DbBackupTest /delete'
2.2、建立“計劃”,如下圖所示:
3、經過上面的兩步,就已經完成了,你可以直接在作業上點選右鍵執行測試是否已經備份成功^-^。
4、相關的幫助連結:
<a href="http://tech.huweishen.com/gongju/1423.html">http://tech.huweishen.com/gongju/1423.html</a>
<a href="http://www.cnblogs.com/059212315/archive/2012/08/10/2631627.html">http://www.cnblogs.com/059212315/archive/2012/08/10/2631627.html</a>
<a href="http://hi.baidu.com/ziyoubird/item/03440b226f5a824646996290">http://hi.baidu.com/ziyoubird/item/03440b226f5a824646996290</a>
<a href="http://database.51cto.com/art/201011/233117.htm">http://database.51cto.com/art/201011/233117.htm</a>
--完整備份
Backup Database NorthwindCS
To disk='G:\Backup\NorthwindCS_Full_20070908.bak'
--差異備份
To disk='G:\Backup\NorthwindCS_Diff_20070908.bak'
With Differential
--日志備份,預設截斷日志
Backup Log NorthwindCS
To disk='G:\Backup\NorthwindCS_Log_20070908.bak'
--日志備份,不截斷日志
To disk='G:\Backup\NorthwindCS_Log_20070908.bak'
With No_Truncate
--截斷日志不保留
With No_Log
--或者
With Truncate_Only
--截斷之後日志檔案不會變小
--有必要可以進行收縮
--檔案備份
Exec Sp_Helpdb NorthwindCS --檢視資料檔案
File='NorthwindCS' --資料檔案的邏輯名
To disk='G:\Backup\NorthwindCS_File_20070908.bak'
--檔案組備份
FileGroup='Primary' --資料檔案的邏輯名
To disk='G:\Backup\NorthwindCS_FileGroup_20070908.bak'
With init
--分割備份到多個目标
--恢複的時候不允許丢失任何一個目标
To disk='G:\Backup\NorthwindCS_Full_1.bak'
,disk='G:\Backup\NorthwindCS_Full_2.bak'
--鏡像備份
--每個目标都是相同的
To disk='G:\Backup\NorthwindCS_Mirror_1.bak'
Mirror
To disk='G:\Backup\NorthwindCS_Mirror_2.bak'
With Format --第一次做鏡像備份的時候格式化目标
--鏡像備份到本地和遠端
To disk='\\192.168.1.200\Backup\NorthwindCS_Mirror_2.bak'
--每天生成一個備份檔案
Declare @Path Nvarchar(2000)
Set @Path ='G:\Backup\NorthwindCS_Full_'
+Convert(Nvarchar,Getdate(),112)+'.bak'
To http://www.hack58.net/Article/html/3/7/2008/mailt disk=@Path
--從NoRecovery或者
--Standby模式恢複資料庫為可用
Restore Database NorthwindCS_Bak
With Recovery
--檢視目标備份中的備份集
Restore HeaderOnly
From Disk ='G:\Backup\NorthwindCS_Full_20070908.bak'
--檢視目标備份的第一個備份集的資訊
Restore FileListOnly
From Disk ='G:\Backup\NorthwindCS_Full_20070908_2.bak'
With File=1
--檢視目标備份的卷标
Restore LabelOnly
From Disk ='G:\Backup\NorthwindCS_Full_20070908_2.bak'
--備份設定密碼保護備份
To disk='G:\Backup\NorthwindCS_Full_20070908.bak'
With Password = '123',init
Restore Database NorthwindCS
From disk='G:\Backup\NorthwindCS_Full_20070908.bak'
With Password = '123'