我一直在運行一個特別大的查詢,生成數百萬條記錄的問題被插入到表中。每次運行查詢時,我都會收到一個報告事務日誌文件已滿的錯誤。
我設法得到一個測試查詢以減少一組結果運行,並使用SELECT INTO而不是INSERT作爲預建表。這組縮減的結果產生了20 gb的表格,838,978,560行。
當試圖INSERT到預建表,我也嘗試使用它和沒有一個羣集索引。兩個失敗。
服務器設置
服務器運行SQL Server 2005(完全不表達)。 正在使用的dbase被設置爲SIMPLE進行恢復,並且文件所在的驅動器上有可用空間(大約100 gb)。
事務日誌文件設置用於文件增長250 MB,最大2,097,152 MB。
日誌文件似乎會按預期增長,直到達到4729 mb。
當問題第一次出現時,文件增長到一個較低的值,但是我減少了同一服務器上其他日誌文件的大小,這似乎允許此事務日誌文件增長的幅度與減少量相同其他文件。
我現在已經用盡瞭如何解決這個問題的想法。如果任何人有任何建議或洞察到該怎麼做,將不勝感激。
請查看https://technet.microsoft.com/en-us/library/dd425070(v=sql.100).aspx。有些事情可以強制SQL Server進行批量插入,這會減少T-log條目的數量。 – Jeremy