SQL Server 事務日志滿的處理方法

2018-04-17

事務日志文件Transaction Log File是用來記錄數據庫更新情況的文件,擴展名為ldf。在 SQL Server 7.0 和 SQL Server 2000 中,如果設置了自動增長功能,事務日志文件將會自動擴展。一般情況下,在能夠容納兩次事務日志截斷之間發生的最大數量的事務時,事務日志的大小是穩定的,事務日志截斷由檢查點或者事務日志備份觸發。然而,在某些情況下,事務日志可能會變得非常大,以致用盡空間或變滿。通常,在事務日志文件占盡可用磁盤空間且不能再擴展時,您將收到如下錯誤消息:
Error:9002, Severity:17, State:2
The log file for database ’%.*ls’ is full.
    除了出現此錯誤消息之外,SQL Server 還可能因為缺少事務日志擴展空間而將數據庫標記為 SUSPECT。有關如何從此情形中恢復的其他信息,請參見 SQL Server 聯機幫助中的“磁盤空間不足”主題。

   另外,事務日志擴展可能導致下列情形:
· 非常大的事務日志文件。
· 事務可能會失敗并可能開始回滾。
· 事務可能會用很長時間才能完成。
· 可能發生性能問題。
· 可能發生阻塞現象。

   事務日志擴展可能由于以下原因或情形而發生:
· 未提交的事務
· 非常大的事務
· 操作:DBCC DBREINDEX 和 CREATE INDEX
· 在從事務日志備份還原時
· 客戶端應用程序不處理所有結果
· 查詢在事務日志完成擴展之前超時,您收到假的“Log Full”錯誤消息
· 未復制的事務

    解決方法

   日志文件滿而造成SQL數據庫無法寫入文件時,可用兩種方法:

    一種方法:清空日志。
    1.打開查詢分析器,輸入命令DUMP TRANSACTION 數據庫名 WITH NO_LOG
    2.再打開企業管理器--右鍵你要壓縮的數據庫--所有任務--收縮數據庫--收縮文件--選擇日志文件--在收縮方式里選擇收縮至XXM,這里會給出一個允許收縮到的最小M數,直接輸入這個數,確定就可以了。

    另一種方法有一定的風險性,因為SQL SERVER的日志文件不是即時寫入數據庫主文件的,如處理不當,會造成數據的損失。
    1: 刪除LOG.分離數據庫 企業管理器->服務器->數據庫->右鍵->分離數據庫
    2:刪除LOG文件.附加數據庫 企業管理器->服務器->數據庫->右鍵->附加數據庫
    此法生成新的LOG,大小只有500多K。

    注意:建議使用第一種方法。

    如果以后,不想要它變大。

    SQL2000下使用:在數據庫上點右鍵->屬性->選項->故障恢復-模型-選擇-簡單模型。
    或用SQL語句:alter database 數據庫名 set recovery simple

定期對數據庫進行檢查當數據庫文件或日志文件的未用空間超過其大小的25%時,系統將會自動縮減文件使其未用空間等于25% 當文件大小沒有超過其建立時的初始大小時不會縮減文件縮減后的文件也必須大于或等于其初始大小對事務日志文件的縮減只有在對其作備份時或將 Truncate log on checkpoint 選項設為True 時才能進行。


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

 

主站蜘蛛池模板: 精品在线一区二区| 98久久人妻无码精品系列蜜桃| 老司机电影网你懂得视频| 成人毛片免费看| 再深点灬舒服灬太大| a级毛片免费观看在线播放| 欧美日韩国产高清一区二区三区| 国产精品亚洲一区二区三区| 久久综合九色综合97手机观看| 草莓视频在线观看黄| 成人伊人青草久久综合网破解版| 人人添人人妻人人爽夜欢视av| 3571色影院| 日本老头变态xxxx| 再深点灬舒服灬太大了老板| 97日日碰人人模人人澡| 最新国产精品精品视频| 国产90后美女露脸在线观看| japanese中文字幕| 欧美中文在线视频| 国产一卡二卡≡卡四卡免费乱码| 一区二区三区福利| 欧美日韩一区二区三区四区在线观看| 国产成人免费a在线视频色戒| 中文字幕无线码免费人妻| 理论片午午伦夜理片影院99| 国产激情电影综合在线看| 中文字幕日韩哦哦哦| 波多野结衣bt| 国产又色又爽又刺激在线观看| 加勒比综合在线| 亚洲区小说区激情区图片区| 里番本子侵犯肉全彩| 女皇跪趴受辱娇躯| 亚洲а∨精品天堂在线| 色八a级在线观看| 国内精品久久久久影院蜜芽| 久久精品国产99久久99久久久| 精品免费视频一卡2卡三卡4卡不卡| 国产美女做a免费视频软件| 久久久久国产一区二区三区|