程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> MSsql每天自動備份數據庫並每天自動清除log的腳本

MSsql每天自動備份數據庫並每天自動清除log的腳本

編輯:更多數據庫知識

1、每日自動備份

  打開企業管理器,進入“管理”-“數據庫維護計劃”,在右側窗口點擊右鍵,選擇“新建維護計劃”,啟動“數據庫維護計劃向導”;點擊“下一步”選擇需要維護的數據庫,維護特性數據庫時,選擇最後一個單選框並勾選需要維護的數據庫名稱;“下一步”選擇更新數據優化信息、“下一步”檢查數據庫完整性、“下一步”指定數據庫備份計劃、“下一步”指定備份存放位置、“下一步”指定事務日志備份計劃、“下一步”指定報表,“下一步”指定歷史紀錄維護,最後設定維護作業名稱;通常來說,如果只需要備份數據庫文件,則只需要指定備份計劃以及存放位置即可,其他項目不做改動。

  在指定備份計劃時候,由於需要每日備份,因此要更改調度。點擊“更改”編輯調度。發生頻率選擇每天;每日頻率選擇作業開始時間,最好選擇數據庫訪問量小時進行,多為半夜時間,可根據流量圖確定具體時間;持續時間通常不用做改動,開始日期為編輯日期,無結束日期。

  編輯好上述維護計劃後,還要注意下 sql server代理服務是否啟動了,因為每日調度維護計劃是要啟動這個服務才能執行的。如果該服務沒有啟動,需要手動啟動一下,這是可以在其子項“作業”中看到剛剛添加過的數據庫維護計劃。

  2、定期自動清理數據庫日志文件

  數據庫日志文件是隨著時間增長而增長的,如果長時間不清理,文件會變得特別大,因此需要定期清空,但是日至文件是恢復數據庫的重要依據,不用日志文件也是不明智的。手工清除單個數據庫的還好說,但數據庫多了,或者臨時沒有來得及清理,可能硬盤空間就會占滿了,影響訪問。因此設置自動清理數據庫日志文件還是比較實用的。

  手動清理方法:右鍵單擊需要清理的數據庫,選擇“屬性”,在“選項”卡上,把故障還原模型設定為簡單,確定後關閉;再右鍵單擊該數據庫,“所有任務”-“收縮數據庫”,確認後即可清除日志文件,最後記得重新選擇“屬性”,將故障還原模型設置為完全。

  自動清理方法:同樣是利用sql server代理服務,執行自動作業。

  打開企業管理器,進入“管理”-“sql server代理服務”-“作業”,在右側窗口點擊右鍵,選擇“新建作業”。“常規”選項卡中,填寫作業名稱,具體描述,注意所有者最好還是用sa或者默認的管理帳號。

  轉到“步驟”選項卡,新建作業步驟,填寫步驟名稱,類型為腳本,數據庫為需要清理日志的數據庫,在下邊命令中填寫以下命令:

  DUMP TRANSACTION 數據庫名稱 WITH NO_LOG

  DBCC SHRINKFILE(數據庫日志文件名,1)

  上邊的數據庫名稱填寫需要維護的數據庫名稱,數據庫日志文件名填寫其對應的日志文件名,注意,不是資源管理器裡看到的帶後綴名的那個名字,而是企業管理器裡,數據庫屬性裡日志選項卡中日志的名字(通常也只是差一個後綴名……),確定後添加一個作業步驟。 如果需要維護多個數據庫,用上述方法重復添加作業步驟,注意每個步驟成功或失敗後的動作即可,最後選擇一下開始的步驟。

  在“調度”選項卡中,類似備份的維護計劃,填寫調度周期,即定期清理的周期,不再細述。如果需要,可以在最後的“通知”選項卡上設置作業完成後的通知項,需要設置操作員,以及設置相應的服務,這裡也不具體說明了,通常不用……

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved