簡體   English   中英

SQL Server 2008R2由於'ACTIVE_TRANSACTION',數據庫'MGR'的事務日志已滿

[英]SQL server 2008R2 The transaction log for database 'MGR' is full due to 'ACTIVE_TRANSACTION'

我運行一個查詢,其中我想更新超過1.3億條記錄。 幾個小時后,我得到一個錯誤:

由於“ ACTIVE_TRANSACTION”,數據庫“ MGR”的事務日志已滿。

現在我的C盤驅動器上有70 MB可用空間。

我認為問題出在磁盤空間很小,這就是為什么查詢失敗,但是現在我如何才能從查詢之前重新獲得丟失的磁盤空間呢?

我正在使用SQL Server 2008 R2

謝謝你的提示

問題與sql在活動事務期間如何記錄所有更改有關。 事務處於活動狀態時,無法刷新日志,因此,如果您有一個巨大的活動事務,則日志會一直增長,直到達到可以超過其容量的程度。 日志記錄的數量取決於許多因素:恢復模式(完全恢復模式是生成更多日志記錄活動的模式)。 另外,您可以按小塊細分事務以啟用兩者之間的日志刷新。 還查看表提示TABLOCK。 丟失的磁盤數量可能必須已進入日志文件。 檢查出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM