出於數據安全的考慮,對數據庫數據進行定時備份是很有必要的,而數據庫的備份時間一般都會選擇在凌晨基本沒有數據庫操作的時候進行,因此設置數據庫自動備份時很好的解決辦法。
設置數據庫自動備份我們可以選擇兩種方式:1.使用作業代理服務;2.使用SSMS對象里面的維護計划。
1.代理作業設置自動備份數據庫
要實現數據庫的定時自動備份,最常用的方式就是使用SQL Server代理中的作業。啟動SQL Server Agent服務,然后在其中新建作業,作業中添加1個備份步驟,類型是T-SQL腳本,然后在命令中輸入如下SQL語句
declare @name varchar(250) set @name='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Backup\ShopStoreData_'+convert(varchar(50),getdate(),112)+'.bak' BACKUP DATABASE [ShopStoreData] TO DISK = @name WITH NOFORMAT, NOINIT, NAME = N'ShopStoreData -完整 數據庫 備份', SKIP, NOREWIND, NOUNLOAD
注:ShopStoreData為需要備份的數據庫名
name為存放備份的路徑
創建好步驟下一步就是創建計划,這個很簡單,不用多說,以上這個失去了語句會將ShopStoreData數據庫完整備份。同時還可以設置警告與通知,警告與通知非必須設置的.
2.SSMS對象--維護計划
創建步驟時還需要寫sql語句不是很方便,有一種更為簡便的方式,簡單的設置就可以搞定自動備份數據庫。首先找到SSMS的管理節點->維護計划,右鍵維護計划向導如圖:

填寫維護計划名,已經維護計划的說明。
(4)單擊“下一步”進入選擇維護任務順序的界面,這里我們可以看到選中的任務出現在列表中,但是我們並不能調整其順序,那是因為在步驟2中我們選擇的是每項任務單獨計划,所以這2個任務是獨立的,沒有先后順序可言。如果當時選擇的是另一個選項,那么這里就可以調整順序了。
(5)選中“備份數據庫(完整)”然后單擊“下一步”按鈕,系統將轉到定義完整備份任務的界面,
這個界面實在太長了,我把任務欄隱藏了都顯示不完,出現了滾動條,這里我們選擇要進行備份的數據庫,選擇為每個數據庫創建備份文件,文件保存在C盤 Backup目錄下,擴展名是bak,出於安全起見,我們可以選中“驗證備份完整性”,當然也可以不選。在SQL2008中提供了壓縮備份的新特性,使得備份文件更小,備份速度更快,這里我們就是由壓縮備份。最后是選擇執行計划,我這里選的是每周日晚上0點的時候執行。
(6)單擊“下一步”按鈕,進入差異備份任務的設置界面,和上一步的界面是一樣的,操作也是一樣的,計划這里我們可以選擇除了周日以外的每天進行差異備份,如圖:
(7)單擊“下一步”按鈕,進入選擇報告選項,這里我們可以將這個維護計划的執行報告寫入文本文件中,也可以講報告通過電子郵件發送給管理員。如果要發送郵件的話,那么需要配置SQL Server的數據庫郵件,另外還要設置SQL Server代理中的操作員,關於郵件通知操作員的配置網上也講的比較多,我這里就不詳述了。
(8)單擊“下一步”按鈕,進入“完成該向導”的界面,系統列出了向導要完成的工作,如圖:
(9)單擊“完成”按鈕,向導將創建對應的SSIS包和SQL作業:
(10)完成后,我們再刷新下對象資源管理器,我們可以看到對應的維護計划和該計划對應的作業:
到此設置自動備份數據庫完.在“作業”下面,右擊 DbBackupPlan.Subplan_1,選擇“作業開始步驟”系統便立即執行該作業,系統運行完成后,就可以看到已經備份完成的數據庫
