徵狀
在 Microsoft SQL Server 2008 或 SQL Server 2008 R2 中,您嘗試使用 BACKUP 語句來備份資料庫。 不過,備份操作失敗,且下列錯誤訊息會記錄在 SQL Server 錯誤記錄檔中:
<日期><時間> <spid> 錯誤:2601、嚴重性:14、State: 1. <日期><時間> <spid> 無法在物件 ' syscommittab ' 中插入含有唯一索引 ' <索引名稱>」的重複按鍵列。 <日期><> <spid> 錯誤:3999,嚴重度:17,狀態:1。 <日期><時間> <spid> 無法在資料庫 ID <中將 commit 資料表與磁片> 進行刷新,因為錯誤2601 檢查錯誤日誌以取得詳細資訊。
當下列情況成立時,就會發生此問題:
-
您已啟用此資料庫的 SQL Server 變更 trackingon。
-
啟用變更追蹤之後,資料庫已完成至少一次的資料庫恢復。注意執行資料庫恢復的最常見案例如下所示:
-
當 SQL Server 服務重新開機時。
-
從備份還原資料庫時。
-
此外,當 SQL Server 嘗試在此資料庫上執行檢查點作業時,也可能會遇到2601錯誤。如需可導致資料庫檢查點之活動的詳細資訊,請參閱下列 SQL Server 2008 檔中「檢查點與記錄的作用中部分」小節中的「產生檢查點的活動」小節:
解決方案
累積更新資訊
SQL Server 2008 Service Pack 3
此問題的修正程式是在 SQL Server 2008 的累積更新2(Service Pack 3)中第一次發行。如需此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2633143 SQL Server 2008 的累積更新套件 2 Service Pack 3注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 修正版本中所包含的所有修復程式及所有安全性修正程式。 Microsoft 建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2629969 在發行 SQL Server 2008 Service Pack 3 之後發行的 SQL Server 2008 組建 Microsoft SQL Server 2008 修復程式是針對特定的 SQL Server service pack 建立的。 您必須將 SQL Server 2008 Service Pack 3 修復程式套用至 SQL Server 2008 Service Pack 3 的安裝。 根據預設,SQL Server service pack 中提供的任何熱修復程式都包含在下一個 SQL Server service pack 中。
SQL Server 2008 R2 Service Pack 1
此問題的修正程式是在 SQL Server 2008 R2 Service Pack 1 的累積更新1中第一次發行。如需如何取得此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2544793 SQL Server 2008 R2 Service Pack 1 的累積更新套件1注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2567616 在發行 SQL Server 2008 R2 Service Pack 1 之後發行的 SQL Server 2008 R2 組建
SQL Server 2008 R2
此問題的修正程式是在累積更新8中第一次發行。如需有關如何取得 SQL Server 2008 R2 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2534352 SQL Server 2008 R2 的累積更新套件8 注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
981356 在發行 SQL Server 2008 R2 之後發行的 SQL Server 2008 R2 組建
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。
參考
如需軟體更新術語的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
824684 描述 Microsoft 軟體更新所使用的標準術語說明
其他相關資訊
若要修正 SQL Server 中的相關問題,請參閱下列知識庫文章:SQL server 中 sys syscommittab 資料表中的重複主鍵列