SQL Server 備份失敗。錯誤:3041,嚴重性:16,狀態:1
首先,我是stackexchange的新手,所以請多多包涵。
我正在執行 SQL Server 9.0.4060。
我的問題是:我的 SQL Server 備份在很多數據庫上一直失敗。
維護計劃適用於不同的備份作業:
每天20:30進行DIFF備份,每週日20:30進行FULL備份。
對於無法完成備份的每個數據庫,我都會收到這兩個錯誤:
Date 06-11-2012 20:31:06 Log SQL Server (Current - 07-11-2012 11:43:00) Source Backup Message BACKUP failed to complete the command BACKUP DATABASE (dbname) WITH DIFFERENTIAL. Check the backup application log for detailed messages. Date 06-11-2012 20:31:06 Log SQL Server (Current - 07-11-2012 11:43:00) Source Backup Message Error: 3041, Severity: 16, State: 1.
額外的錯誤。
Date 06-11-2012 17:53:27 Log SQL Server (Current - 07-11-2012 11:43:00) Source Logon Message Error: 18456, Severity: 14, State: 16. Date 06-11-2012 17:53:27 Log SQL Server (Current - 07-11-2012 11:43:00) Source Logon Message Login failed for user 'sa'. [CLIENT: <local machine>] Date 06-11-2012 20:30:11 Log SQL Server (Current - 09-11-2012 11:27:00) Source spid15s Message SQL Server has encountered 2 occurrence(s) of cachestore flush for the 'Bound Trees' cachestore (part of plan cache) due to some database maintenance or reconfigure operations.
還有其他與上述錯誤類似的錯誤,包括“SQL 計劃”和“對象計劃”。而不是“綁定樹”。
如果你們需要任何其他資訊,只需說出這個詞。
正如 Max 指出的那樣,sa 登錄錯誤與備份時間無關,因為它發生在幾個小時前,但是第二個確實如此。你有沒有看過: 連結
http://www.sqlservercentral.com/Forums/Topic377116-146-1.aspx#bm380502
MSDN 部落格中的任何項目對您的環境有影響嗎?最常見的是 AUTO_CLOSE ON。讓我們知道,謝謝。
請看這裡: 如何對 SQL Server 中的“Msg 3041”進行故障排除
頁面摘錄:
消息 3041 是關於備份失敗的通用報告。要了解錯誤的原因並解決它,您必須使用在 3041 事件條目之前發生的 SQL Server 錯誤日誌條目。通常,3041 前面有詳細的錯誤消息,說明備份失敗的真正原因。詳細的錯誤消息僅寫入 SQL Server 錯誤日誌和客戶端應用程序。Windows 中的應用程序日誌中未報告詳細消息。
更新(閱讀@dezso 評論後)
我已經看到報告的“額外錯誤”,但我不確定它們是否與備份錯誤有關。備份錯誤的日期為 20:31:06,但“額外錯誤”的日期為 17:53:27,因此額外錯誤發生在實際備份錯誤之前大約 2 小時 40 分鐘。這些額外的錯誤與登錄問題有關。
我認為 17:53:27 發生的登錄問題不會導致 20:31:06 的備份失敗。因此認為備份錯誤與“額外錯誤”無關。
我也不認為在 17:53:27 發生的一般錯誤會導致備份在 20:31:06 失敗(除非數據庫真的很大)。@Arviddk 報告說“我的 SQL Server 備份在很多數據庫上一直失敗”我認為假設“很多”意味著超過 10 個數據庫是安全的。
所以我認為,如果單個數據庫的單個備份需要超過 2 小時 40 分鐘,那麼您不能在單個伺服器上擁有 10 或 20 個這樣的數據庫……否則您的伺服器將一生只做備份。所以我假設單個備份需要不到2小時40分鐘,所以我認為備份錯誤和額外錯誤沒有關係。
最後一次報告的“cachestore flush / ‘Bound Trees’”錯誤發生在 06-11-2012 20:30:11,所以這是備份錯誤之後發生的事情。無論如何,與記憶體相關的問題不應導致錯誤(如果它可以減慢某些東西的速度)。
一些問題
一些有助於確定問題的問題:
- 執行完整備份需要多長時間?
- 執行 DIFF 備份需要多長時間?
- 該錯誤是否僅在 DIFF 備份時發生?
- 備份失敗的百分比是多少?(1%?10% 50%)
- 也許您可以嘗試只進行完整備份以檢查它是否與 DIFF 備份有關?(我從來沒有在 SQL Server 上做過任何 DIFF 備份,我沒有使用它們的經驗)
根據 SQL Server 日誌中的 MS 網站,應該還有一些與備份失敗相關的其他錯誤,但我期待更接近備份失敗的時間。