2011年9月15日 星期四

SQL SERVER 如何縮減 Transaction Log 大小

在使用 SQL Server 時,有時會不小心讓交易記錄檔過大
這時候可以利用下列的方式把交易記錄檔 Transaction Log 檔縮小 。

切記 : 在作業前記得先做一次 LOG 的備份,
並把截斷交易紀錄 的選項打開,這樣做出來的備份才不會有問題。
( 如下圖 以 MS SQL 2005 為例 )




步驟 :

A : 先列出所有資料檔的檔案大小,SQL 語法如下 :



執行結果 :



由上圖顯示 , 目前 log 檔案約 150G


B :
目的 : 把 LOG 資料檔的大小由 150G 縮減至 30G

SQL 語法如下 :
DBCC SHRINKFILE (filename, SIZE);

執行範例如圖 :



PS : 上圖顯示有 3851608 資料頁,除以 128 就是資料大小

C : 再執行一次查詢列出所有資料檔的檔案大小
如下圖 :


結果如下圖 :



交易記錄檔 Transaction LOG 已經減少為 30G

大功告成 !!



原廠參考資料 :
http://msdn.microsoft.com/zh-tw/library/ms189493.aspx


沒有留言: