解決數據庫日誌文件過大的問題

原文鏈接:https://www.cnblogs.com/tylerdonet/p/3550434.html

隨着數據庫使用時間增長,日誌文件也在不停的增大,這裏介紹幾種方法減小這個文件的方法。

1.直接刪除log文件

分離數據庫。分離數據庫之前一定要做好數據庫的全備份,選擇數據庫——右鍵——任務——分離,如下圖

image

將日誌文件和數據文件複製粘貼到另外一個文件夾中以防萬一。刪除鏈接,如下圖

image

直接刪除日誌文件,然後再附加數據庫,如下圖

image

附加的時候會自動將ldf文件和mdf文件都附加上,但是會提示找不到ldf文件,沒關係,選中ldf文件這一行,點擊下面的刪除按鈕,點擊確定就可以了。如下圖

image

image

如家成功之後生成的新的ldf文件只有504K。

2.收縮日誌文件

也可以採用收縮日誌文件的方式來減小這個日誌文件大小。右擊數據庫-任務-收縮-文件,選擇日誌文件,如下圖

在收縮操作這個選項中可以選中第二項,“在釋放未使用的空間錢重新組織頁”,然後指定一個大小,點擊確定就可以了。

3.使用故障恢復模型爲簡單模型

爲防止日誌文件以後增大,也可使用故障恢復模型爲簡單模型。右擊數據庫-屬性-選項-恢復模式,選擇簡單。如下圖

 

也可使用語句實現這一功能。

SQL語句:  alter database數據庫名set recovery simple  另外,Truncate log on checkpoint(此選項用於SQL7.0,SQL 2000中即故障恢復模型選擇爲簡單模型)當執行CHECKPOINT命令時如果事務日誌文件超過其大小的70%則將其內容清除在開發數據庫時時常將此選項設置爲True Auto shrink定期對數據庫進行檢查當數據庫文件或日誌文件的未用空間超過其大小的25%時,系統將會自動縮減文件使其未用空間等於25%當文件大小沒有超過其建立時的初始大小時不會縮減文件縮減後的文件也必須大於或等於其初始大小對事務日誌文件的縮減只有在對其作備份時或將Truncate log on checkpoint選項設爲True時才能進行。

 注意:一般立成建立的數據庫默認屬性已設好,但碰到意外情況使數據庫屬性被更改,請用戶清空日誌後,檢查數據庫的以上屬性,以防事務日誌再次充滿。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章