1. 程式人生 > 資料庫 >sqlserver 定期清理事務日誌和業務資料

sqlserver 定期清理事務日誌和業務資料

1.開啟smms,在主節點在新增job
在這裡插入圖片描述
在這裡插入圖片描述

2.輸入job名稱
在這裡插入圖片描述

3點選steps ,點選new ,輸入名稱,選擇資料庫,輸入執行的指令碼,點選ok
在這裡插入圖片描述

4.在schedule裡,點選new ,輸入名稱,選擇recuring,發生頻次Occurs,每天凌晨1點執行,點選ok
在這裡插入圖片描述

5.最後點選ok。定時任務就完畢了

Always on sqlserver叢集清理事務日誌:日誌定時任務和上面一致,主要說下如何清理日誌
由於叢集不能將恢復模式改為simple,所以微軟給我們提供如下方案
1.備份資料庫資料
2.備份資料庫日誌
3.縮略事務日誌(縮略日誌並不以設定多大為限制,看資料庫正在引用的情況,這裡暫時設定為1024M)

指令碼:
use[arms]
go
BACKUP DATABASE [arms]
TO DISK = N’E:\MSSQL\MSSQL15.POW\MSSQL\Backup\arms.bak’ WITH NOFORMAT, NOINIT,
NAME = N’TDE_Test-Full Database Backup’, SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO
BACKUP LOG [arms] TO DISK = N’E:\MSSQL\MSSQL15.POW\MSSQL\Backup\arms.trn’ WITH NOFORMAT, NOINIT,
NAME = N’TDE_Test-Full Database Backup’, SKIP, NOREWIND, NOUNLOAD, STATS = 10
go
DBCC SHRINKFILE(N’arms_log’,1024,TRUNCATEONLY)
Go

操作smms
1.資料完整備份
資料庫右擊-任務-備份
選擇備份型別為完整、不勾選進複製備份、備份元件選擇資料庫,可以點選新增自己選擇備份路徑和名稱,之後等待備份完畢

在這裡插入圖片描述

2.資料庫事務日誌備份
資料庫右擊-任務-備份,如下圖所示選擇備份型別為事務日誌、不勾選進複製備份,可以自己設定路徑
在這裡插入圖片描述
3、收縮日誌
通過上邊的兩步,日誌空間已經可以被釋放了,按照訂閱資料庫的日誌清理的第3步進行操作就可以實現對日誌的收縮了。
1、2兩步根據資料大小和伺服器IO效能可能需要較長時間,請儘量在夜間或其他業務不繁忙的時間段進行操作

在這裡插入圖片描述