情境2.使用資料庫複寫進行資料備份,導致產生大量交易日誌。
SQL Server 2008 :
方法一
1.將資料庫還原模式切換至簡單模式 (簡單模式不會記錄交易紀錄,所以交易紀錄會被截斷)
2.執行資料庫壓縮
3.將資料庫還原模式切換至完整模式(恢復正常交易紀錄)
方法二
1.將資料庫還原模式切換至簡單模式
2.在要清除交易日誌的資料庫上新增查詢
select * from sys.database_files查出NAME後
3.改下DBCC命令
DBCC SHRINKFILE ( 帶入剛剛查到的NAME , 2)
以往我們都只有做完整備份,而完整備份會將資料庫以及交易日誌進行完整備份,
但是不會進行交易日誌截斷,所以會有越備份越大的問題。
而做了完整備份卻沒有做交易紀錄備份跟資料庫壓縮,自然交易紀錄不會被截斷,當然會越長越大。
所以標準做法應該是在維護計畫中,做完完整備份後,再做一次交易紀錄備份,
把交易紀錄截斷,然後再接著執行資料庫壓縮,就不會發生爆資料庫的問題了。
未完待續..