徵狀
假設您使用的是 Microsoft SQL Server 2012 或 SQL Server 2014。 當 tempdb 資料庫的記錄檔案已滿時,SQL Server 會當機,而且您收到下列錯誤訊息:
錯誤:9002,嚴重性:17,狀態: 4. 資料庫「tempdb」的事務日誌已滿,因為是「ACTIVE_TRANSACTION」。錯誤:3314,嚴重性:21,狀態: 3. 在資料庫 ' tempdb」撤銷記錄的作業期間,記錄記錄識別碼(135:376:442)發生錯誤。 通常,特定的故障會記錄為 Windows 事件記錄服務中的錯誤。 從備份還原資料庫或檔案,或修復資料庫。錯誤:3449,嚴重性:21,狀態: 1. 必須關閉 SQL Server 才能復原資料庫(資料庫 ID 2)。 資料庫是無法關閉或系統資料庫的使用者資料庫。 重新開機 SQL Server。 如果資料庫無法在其他啟動之後復原,請修復或還原資料庫。由於伺服器關閉,SQL 追蹤已停止。 Trace ID = "1"。 這只是一則資訊訊息;不需要使用者動作。
如果 tempdb 記錄檔案的大小不足以處理 tempdb 工作負荷,且記錄檔的自動增長設定為 [ 關閉],就會發生此問題。 如果在 tempdb 中由於空間有限而導致回滾失敗,SQL Server 會當機。 此熱修復程式可讓您在記錄空間不足時更精確地計算保留空間。 此熱修復程式也可讓tempdb記錄暫時增加,以協助避免在tempdb中出現回滾失敗的問題。 這些變更可協助防止伺服器當機。
解決方案
SQL Server 2014 的 Service pack 資訊
若要解決此問題,請取得最新的 Microsoft SQL Server 2014 service pack。如需詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2958069 如何取得最新的 SQL Server service pack 2014 如需 SQL Server 2014 Service Pack 1 (SP1)的詳細資訊,請參閱 在 Sql server 2014 Service pack 1 中修正的錯誤。
SQL Server 2012 的 Service pack 資訊
若要解決此問題,請取得最新的 Microsoft SQL Server 2012 service pack。如需詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2755533 如何取得最新的 SQL Server service pack 2012
狀態
Microsoft 已確認<適用於>一節所列的 Microsoft 產品確實有上述問題。