一、前言
SQL Server備份和還原全攻略,裡面包括了通過SSMS操作還原各種備份文件的圖形指導,SQL Server數據庫最小宕機遷移方案,裡面使用SQL腳本(T-SQL)完成完全備份、差異備份、完全還原、差異還原等;
有了上面的基礎,我們加入了數據庫的備份元素,通過維護計劃來生成數據庫的備份文件,這包括兩種文件,數據庫的完全備份與差異備份,有了這兩個文件,我們可以通過SQL Server備份和還原全攻略(圖形操作)或者SQL Server數據庫最小宕機遷移方案(代碼操作)的方法來還原我們的數據;
二、場景設計
假設我們的數據庫不是很大,但是我們的數據會比較重要,大概一天一個備份就能滿足我們的業務需要,那我們應該如何設計我們的備份方案呢?
星期天晚上02:00做一次數據庫的完全備份,其它時間星期一至星期六晚上02:00做一次差異備份,基本邏輯如下圖所示:
(圖:數據庫備份文件生成邏輯)
Tips:
1. 如果你的數據庫比較大,而且流數據(就是一些記錄性的流水數據)比較多,我們的做法是把這些大表分離出一個新的數據庫(縱向切割數據庫),這樣接下來的問題,這篇文章就可以解決了;
2. 如果無法把流數據分離出數據庫,那麼可以考慮表分區,分區之後再對其它表進行數據備份(主分區備份);這些備份是無法使用差異備份了,每次都只能使用完全備份,而且還原的時候表分區是不可以用的,只能修改表名之後再創建新表,請參考:SQL Server 維護計劃備份主分區
3. 如果一天一次的備份滿足不了業務上的需求,那麼可以考慮發布訂閱方案,在兩台機器上進行事務復制,可以調整復制的頻率,加強數據的安全性,這個會在以後的文章中說明;
三、實戰操作
1. 數據庫 -> 【管理】-> 【維護計劃】 -> 【新建維護計劃】;
(圖1)
2. 勾選【備份數據庫(完整)】和【備份數據庫(差異)】;
(圖2)
3. 設置 完整備份文件的路徑和備份文件的擴展名;注意特定數據庫的選擇;
(圖3)
4. 填寫 完整備份作業計劃的名稱,執行間隔勾選星期日,設置執行時間;
(圖4)
5. 設置 差異備份文件的路徑和備份文件的擴展名;注意特定數據庫的選擇;
(圖5)
6. 填寫 差異備份作業計劃的名稱,執行間隔勾選除星期日之外的日期,設置執行時間;
(圖6)
7. 這就生成 完整備份 與 差異備份 的子計劃了,
(圖7)
8. 在完整備份的設計界面中,從左邊拖拉一個【清除歷史記錄】的控件到右邊,並雙擊進行下圖的設置;
(圖8)
9. 從左邊拖拉一個【清除維護】的控件到右邊,並雙擊進行下圖的設置,這裡需要設置 完整備份 的路徑和文件的擴展名;
(圖9)
10. 在步驟上加上箭頭形成 完全備份作業的流程圖;
(圖10)
11. 在差異備份的設計界面中,從左邊拖拉一個【清除歷史記錄】的控件到右邊,並雙擊進行下圖的設置;
(圖11)
12. 從左邊拖拉一個【清除維護】的控件到右邊,並雙擊進行下圖的設置,這裡需要設置 差異備份的路徑和文件的擴展名;
(圖12)
13. 在步驟上加上箭頭形成 差異備份 作業的流程圖;
(圖13)
14. 在維護計劃下生成Ant_Backup,在代理中生成 完整備份與差異備份的作業;
(圖14)