MS SQL 備份計劃

MS SQL 有工具可以協助建立 full backup, differential, transactionlog 的備份計劃,介面相當友善且容易上手

上篇介紹了如何把 DB 還原至某個時間點,但前提是備份的工具都有做到才能達到

而這篇就簡單的介紹一下目前 MS SQL 有什麼樣的工具可以幫助我們快速建立備份

在 SQL Server 管理介面裡,有個快速產生備份的工具可以讓你快速上手 db 的備份工作

透過工具的方式,把 backup 拖拉到右側,即可完成樣版

 

在Gnernal 這邊可以設定是要用 full, diff 或是 transacion log 的方式去備份, Databases 亦可以選擇是要全部或是特定的某幾個

在 Destination 這邊,如果你的備份 db 選了兩個以上(含),建議將 create sub -directory 的選項打勾,這樣備份的檔案才不會全部擠在一起,而會依照不同的 db 名稱去放置到相對的資料夾底下

回到 job 選單按一下日曆的 icon 即可選擇你要的 schedule 行事曆,這邊就不多說了,有排過 job 應該不陌生

接著存檔即可完成, 接著我們就可以在 Agent Job 看到我們剛剛建立的 job 了,就是如此簡單

實際上試跑三次後的結果就會如下圖所示

若產生的 backup job 無法刪除,需用比較特別的方式刪除

DELETE FROM sysmaintplan_log
WHERE subplan_id in 
  ( SELECT Subplan_ID from sysmaintplan_subplans
    -- change Subplan name where neccessary 
  WHERE subplan_name = 'Subplan_1' ) 

-- Delete the subplan 
DELETE FROM sysmaintplan_subplans
WHERE subplan_name = 'Subplan_1'

參考資料

https://dbamohsin.wordpress.com/2011/12/13/the-delete-statement-conflicted-with-the-reference-constraint-fk_subplan_job_id/