sql點滴39—解決數據庫日志文件過大的問題


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

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時才能進行。

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM