SQL Server 每日定期備份與定期刪除舊有備份檔
SQL Server 資料庫備份是將存放在資料庫裡面的資料,轉成單一檔案保存,通常是副檔名為 bak 的檔案,備份後的檔案可以保留一陣子,如果將來資料庫或是伺服器發生問題時,我們可以將備份資料再還原,就可以救回重要的資料。
而定期備份資料庫是專案管理或資料維護非常重要的一步,因為我們無法保證資料庫或伺服器何時會出現問題,可能硬體損壞也可能被駭客入侵,所以當網站或專案開始運作的時候,就要開始定期備份資料庫,以免重要資料消失。
接下來我會示範如何在 SQL Server 內設定每日定期備份,並建立第 2 個排程為刪除舊有備份。
要刪除舊有備份的原因是防止硬碟容量成長太快,每一次備份都會增加硬碟空間,如果空間有限,對於太舊的備份檔就要適時刪除,而舊有備份要還原的機率也很小。
操作系統: Windows Server 2019
資料庫版本: SQL Server 2019 Developer
每日定期備份操作
SQL Server 的操作工具是 Microsoft SQL Server Management Studio (SSMS) ,如果沒有工具的話,可到此下載
打開 SSMS 之後,執行「管理 > 維護計劃 (按右鍵) > 新增維護計劃」。
輸入計劃名稱
設定排程時間
點擊日曆圖示開啟排程時間
設定頻率及時間,我選擇為每日排程,於上午 12 點執行。完成後按下「確定」。
設定備份項目
接著要選擇執行項目,在左上方的「工具箱 > 維護計劃工作 > 備份資料庫工作」
將「備份資料庫工作」拖拉到維護計劃中。
雙點擊「備份資料庫工作」,在資料庫中下拉再勾選要備份的資料庫。
在「目的地」頁籤中選擇要存放的位置,可存在本機、網路芳鄰或是 NAS 。完成後按「確定」。
設定完成後再「儲存」計劃就完成了。
測試備份
設定完成之後,可以初次測試,在已新增的備份名稱(看不到可以先按重整),按右鍵選「執行」。
測試成功。
檢查是否有檔案出現。
有檔案出現表示我們的每日備份資料庫計劃已經成功了喔。
刪除舊有備份檔
刪除舊有備份檔跟建立備份排程是相似的,都需要啟動一個新排程。
執行「管理 > 維護計劃 (按右鍵) > 新增維護計劃」
輸入名稱「刪除舊有備份檔」
設定排程時間
點擊日曆圖示開啟排程時間
設定頻率及時間,我一樣選擇為每日排程,但時間錯開備份時間。完成後按下「確定」。
設定清除項目
接著要選擇執行項目,執行左上方的「工具箱 > 維護計劃工作 > 維護清除工作」,拖拉至維護內容。
雙擊「維護清除工作」,接著選擇檔案位置,副檔名為 bak。
檔案存在時間就選擇想刪除多久以前的檔案,時間單位有「小時、天、週、月、年」。完成後按「確定」。
設定完成後再「儲存」計劃就完成了。
問題排除
如果新增維護計劃時,出現問題: 「Agent XPs’ 元件已經由此伺服器的安裝性組態關閉。…」
此原因為維護計劃的執行服務未啟動,只要啟動 SQL Server Agent 服務就可以了。
解決方式:
開啟「設定管理員」,在 2017 以前版本名稱為「組態管理員」,也是同樣的功能。
找到「SQL Server 服務 > SQL Server Agent(MSSQLSERVER)」。
按右鍵選「啟動」。
這樣就可以正常使用維護計劃了,但因為 SQL Server Agent 預設為手動啟動,所以要設定成自動啟動,下次就不會再發生同樣的問題。
在 SQL Server Agent 按右鍵選內容。
在「服務 > 啟動模式」選擇「自動」。
這樣就完成了。
重點整理
- 定期備份資料庫是專案管理或資料維護非常重要的一步
- 使用 SSMS 建立維護計劃
- 設定時間排程,建議每日一次
- 建立維護工作為備份資料庫
- 刪除備份檔一樣是維護計劃
- 刪除備份檔一樣為每日執行
- 刪除備份檔可選擇保留天數
相關學習文章
- Windows Server 如何安裝 SQL Server 2019 免費開發版
- 如何避免 MS-SQL 暴力登入攻擊 (嘗試評估密碼時發生錯誤、找不到符合所提供名稱的登入)
- [C#] 產生 MSSQL Table DML SQL 語法
如果你在學習上有不懂的地方,需要諮詢服務,可以參考站長服務,我想辨法解決你的問題
如果文章內容有過時、不適用或錯誤的地方,幫我在下方留言通知我一下,謝謝