Sql-Server-2005

SQL Server 聲稱事務日誌已滿,但事實並非如此?

  • March 15, 2012

我正在嘗試INSERT從一個數據庫到另一個數據庫進行大型操作。但我收到一條錯誤消息:

消息 9002,級別 17,狀態 4,第 1 行 數據庫“_ARCHIVE_mydatabase”的事務日誌已滿。要找出日誌中的空間不能被重用的原因,請參閱 sys.databases 中的 log_reuse_wait_desc 列

到目前為止我做過的事情:

  • 檢查磁碟是否有足夠的磁碟空間
  • 檢查事務日誌文件大小是否很小(1024 KB)
  • 檢查 log_reuse_wait_desc 是 NOTHING
  • 檢查 _ARCHIVE_mydatabase 的恢復模式是否簡單
  • 重新啟動了伺服器

我還嘗試從這個 SF 答案執行查詢:( 事務日誌已滿)但它沒有幫助。

此外,我們有許多_ARCHIVE數據庫,它們都有相同的錯誤!

我還能嘗試什麼,為什麼會這樣?

不要問明顯的問題,但您是否檢查過以確保未設置日誌文件大小限制?或者自動增長的選項沒有被禁用..

事務日誌文件不應該很小。它是 SQL 事務的“暫存空間”,對於 SQL Server 的執行至關重要。將其設置為合理的值,例如 512MB 或 1GB,然後再次嘗試操作。

附帶說明,請不要在“簡單”恢復模式下執行生產數據庫。完整的事務日誌有助於 SQL Server 在發生意外時保持內部事務的一致性。您應該觀察日誌文件的增長,手動將其增長到合理的大小,然後定期備份事務日誌(我的設置為每小時一次)。

引用自:https://serverfault.com/questions/369315