SQL Server 每日定期備份與定期刪除舊有備份檔
而定期備份資料庫是專案管理或資料維護非常重要的一步,因為我們無法保證資料庫或伺服器何時會出現問題,可能硬體損壞也可能被駭客入侵,所以當網站或專案開始運作的時候,就要開始定期備份資料庫,以免重要資料消失。
接下來我會示範如何在 SQL Server 內設定每日定期備份,並建立第 2 個排程為刪除舊有備份。
要刪除舊有備份的原因是控制硬碟容量成長太快,每一次備份都會增加硬碟空間,如果空間有限,對於太舊的備份檔就要適時刪除,而舊有備份要還原的機率也很小。
操作系統: Windows Server 2019
資料庫版本: SQL Server 2019 Developer
每日定期備份操作
SQL Server 的操作工具是 Microsoft SQL Server Management Studio (SSMS) ,如果沒有工具的話,可到此下載
打開 SSMS 之後,執行「管理 > 維護計劃 (按右鍵) > 新增維護計劃」。
![](https://assets.matters.news/embed/a533d9b6-762a-4b92-8e55-cbe0b85243fa.jpeg)
輸入計劃名稱
![](https://assets.matters.news/embed/619ca359-8022-4aa0-90e7-b82a6a659480.jpeg)
設定排程時間
點擊日曆圖示開啟排程時間
![](https://assets.matters.news/embed/3343b14b-b5da-4c13-9728-e215e2da1877.jpeg)
設定頻率及時間,我選擇為每日排程,於上午 12 點執行。完成後按下「確定」。
![](https://assets.matters.news/embed/e51f28f9-18fb-480e-b7f9-828235696eb5.jpeg)
設定備份項目
接著要選擇執行項目,在左上方的「工具箱 > 維護計劃工作 > 備份資料庫工作」
![](https://assets.matters.news/embed/f9a7af71-9c7d-48b6-ade5-cc9ca1729663.jpeg)
將「備份資料庫工作」拖拉到維護計劃中。
![](https://assets.matters.news/embed/2555568f-11af-4eb3-bf8c-3f4e61939eef.jpeg)
雙點擊「備份資料庫工作」,在資料庫中下拉再勾選要備份的資料庫。
![](https://assets.matters.news/embed/1e96427e-7ca5-427c-a3f3-582fcec6fc77.jpeg)
在「目的地」頁籤中選擇要存放的位置,可存在本機、網路芳鄰或是 NAS 。完成後按「確定」。
![](https://assets.matters.news/embed/d9eecf73-8c09-4944-82fb-f310a382d0cc.jpeg)
設定完成後再「儲存」計劃就完成了。
![](https://assets.matters.news/embed/d31bf909-9521-4a1a-9e47-5eded4214d2a.jpeg)
測試備份
設定完成之後,可以初次測試,在已新增的備份名稱(看不到可以先按重整),按右鍵選「執行」。
![](https://assets.matters.news/embed/b6b83bd6-daab-4cd5-943c-e135a52c62cc.jpeg)
測試成功。
![](https://assets.matters.news/embed/bb4921c6-4429-4685-8b40-0214c605131d.jpeg)
檢查是否有檔案出現。
![](https://assets.matters.news/embed/7b631203-69aa-4d96-bcbc-5f84100dbd04.jpeg)
有檔案出現表示我們的每日備份資料庫計劃已經成功了喔。
刪除舊有備份檔
刪除舊有備份檔跟建立備份排程是相似的,都需要啟動一個新排程。
執行「管理 > 維護計劃 (按右鍵) > 新增維護計劃」
![](https://assets.matters.news/embed/5aa93ba3-d97c-4bcb-a5ca-87c76fa28624.jpeg)
輸入名稱「刪除舊有備份檔」
![](https://assets.matters.news/embed/72dcdfdc-75c9-4946-af7b-9a8aaa31c001.jpeg)
設定排程時間
點擊日曆圖示開啟排程時間
![](https://assets.matters.news/embed/08b6ce0b-aaaa-496d-ac48-9eaef37e9546.jpeg)
設定頻率及時間,我一樣選擇為每日排程,但時間錯開備份時間。完成後按下「確定」。
![](https://assets.matters.news/embed/fadc524f-7586-4a8e-b4df-b54340d4aff9.jpeg)
設定清除項目
接著要選擇執行項目,執行左上方的「工具箱 > 維護計劃工作 > 維護清除工作」,拖拉至維護內容。
![](https://assets.matters.news/embed/2763e2ec-5a08-4a7f-99a0-6b933a5bd07e.jpeg)
雙擊「維護清除工作」,接著選擇檔案位置,副檔名為 bak。
檔案存在時間就選擇想刪除多久以前的檔案,時間單位有「小時、天、週、月、年」。完成後按「確定」。
![](https://assets.matters.news/embed/51b87af2-79e1-48eb-a8c6-3f26db013d48.jpeg)
設定完成後再「儲存」計劃就完成了。
![](https://assets.matters.news/embed/f2be9394-ff90-4241-bb87-699442541156.jpeg)
問題排除
如果新增維護計劃時,出現問題: 「Agent XPs’ 元件已經由此伺服器的安裝性組態關閉。…」
![](https://assets.matters.news/embed/58abdf48-1a3c-4d9c-8e6b-dab5b5d9b5dc.jpeg)
此原因為維護計劃的執行服務未啟動,只要啟動 SQL Server Agent 服務就可以了。
解決方式:
開啟「設定管理員」,在 2017 以前版本名稱為「組態管理員」,也是同樣的功能。
![](https://assets.matters.news/embed/750d0d5b-6b9c-43cc-b80a-9fa4a16c2e81.jpeg)
找到「SQL Server 服務 > SQL Server Agent(MSSQLSERVER)」。
![](https://assets.matters.news/embed/1bef9683-6ac0-49fa-9183-c4b8d3da2e87.jpeg)
按右鍵選「啟動」。
![](https://assets.matters.news/embed/02293114-3ce9-4ba1-aabb-acdd0ab10584.jpeg)
這樣就可以正常使用維護計劃了,但因為 SQL Server Agent 預設為手動啟動,所以要設定成自動啟動,下次就不會再發生同樣的問題。
在 SQL Server Agent 按右鍵選內容。
![](https://assets.matters.news/embed/bd35b0bd-8c97-43a3-928b-6c620b76da21.jpeg)
在「服務 > 啟動模式」選擇「自動」。
![](https://assets.matters.news/embed/ef42741d-12d4-462b-a8d9-94021600557a.png)
這樣就完成了。
重點整理
- 定期備份資料庫是專案管理或資料維護非常重要的一步
- 使用 SSMS 建立維護計劃
- 設定時間排程,建議每日一次
- 建立維護工作為備份資料庫
- 刪除備份檔一樣是維護計劃
- 刪除備份檔一樣為每日執行
- 刪除備份檔可選擇保留天數
相關學習文章
- Windows Server 如何安裝 SQL Server 2019 免費開發版
- 如何避免 MS-SQL 暴力登入攻擊 (嘗試評估密碼時發生錯誤、找不到符合所提供名稱的登入)
- [C#] 產生 MSSQL Table DML (SELECT, INSERT, UPDATE, DELETE) SQL 語法
原始文章連結: https://blog.hungwin.com.tw/sqlserver-backup-delete-file/
喜欢我的作品吗?别忘了给予支持与赞赏,让我知道在创作的路上有你陪伴,一起延续这份热忱!
![](https://imagedelivery.net/kDRCweMmqLnTPNlbum-pYA/prod/avatar/5fdb557b-5cdf-44e1-97bb-a4cb23d72bf0.jpeg/public)