你目前正处于脱机状态,正在等待 Internet 重新连接

修复: 备份失败在 SQL Server 2008年,SQL Server 2008 R2 或 SQL Server 2012年如果启用跟踪对数据库的更改

重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。

点击这里察看该文章的英文版: 2603910
Microsoft 将分发 Microsoft SQL Server 2008 Service Pack 1 (SP1),Microsoft SQL Server 2008 Service Pack 2 (SP2),Microsoft SQL Server 2008 R2 或 Microsoft SQL Server 2012年修复作为一个可下载的文件。修补程序是累积性的因为每个新版本包含的所有修补程序和所有安全更新都包含上一个 SQL Server 2008 SP1,SQL Server 2008 SP2,SQL Server 2008 R2 或 SQL Server 2012年的都更新版本。
症状
当您使用备份语句试图备份一个数据库,Microsoft SQL Server 2008年中,Microsoft SQL Server 2008 R2 中或 Microsoft SQL Server 2012年中时,则操作将失败,如果满足以下条件:
  • 已启用跟踪对数据库的更改。
  • 数据库已恢复过至少一次后启用更改跟踪。

此外,在 SQL Server 错误日志中记录了以下错误:
<Date><Time><spid>错误: 2601,严重性: 14 日状态: 1。
<Date><Time><spid>不能插入对象 sys.syscommittab<Index name="">的唯一索引中的重复键一行。
<Date><Time><spid>错误: 3999,严重性: 17 日状态: 1。
<Date><Time><spid>未能刷新到磁盘中由于错误 2601 dbid<Database id="">提交表格。请查看错误日志的详细信息。</Database> </spid></Time></Date></spid></Time></Date></Index></spid></Time></Date></spid></Time></Date>
备注:
  • 当您按照下列步骤来恢复数据库,则可能发生此问题:
    1. 在重新启动 SQL Server 服务。
    2. 从备份文件中还原数据库。
  • 在数据库上执行检查点操作,也可能出现此错误。

解决方案

累积更新信息

SQL Server 2012

第一次发布此问题的修补程序是累积更新 1 中 SQL Server 2012年。有关此累积更新包的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2679368 对于 SQL Server 2012 的累积更新包 1
注意: 因为版本具有累积性,所以每个新修补程序版本包含的所有修补程序和所有安全修复程序都包含上一个 SQL Server 2012 的修补程序版本。Microsoft 建议您考虑将应用包含此修复程序的最新的修补程序版本。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2692828 在SQL Server 2012发布后发布了 SQL Server 2012 生成
必须将一个 SQL Server 2012年的修补程序应用到 SQL Server 2012年的安装。

SQL Server 2008 R2

累积更新 11 中首次发布此问题的修补程序。有关如何为 SQL Server 2008 R2 中获取此累积更新包的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2633145 SQL Server 2008 R2 的累积更新软件包 11
注意: 生成是累积性的因为每个新修补程序版本包含的所有修补程序和附带上一个 SQL Server 2008 R2 的所有安全修补程序的修补都程序版本。我们建议您考虑将应用包含此修复程序的最新的修补程序版本。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
981356 在SQL Server 2008 R2 发布后SQL Server 2008 R2 生成发布

SQL Server 2008 R2 Service Pack 1

此问题的修补程序首次发布累积更新 4 中的 SQL Server 2008 R2 Service Pack 1。有关如何获取此累积更新包的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2633146 SQL Server 2008 R2 Service Pack 1 的累积更新包 4
注意: 生成是累积性的因为每个新修补程序版本包含的所有修补程序和附带上一个 SQL Server 2008 R2 的所有安全修补程序的修补都程序版本。我们建议您考虑将应用包含此修复程序的最新的修补程序版本。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2567616 在 SQL Server 2008 R2 Service Pack 1 月发布之后发布的 SQL Server 2008 R2 生成

SQL Server 2008 Service Pack 2

此问题的修补程序首次发布的累积更新 7 为 SQL Server 2008 Service Pack 2。有关此累积更新包的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2617148 对于 SQL Server 2008 Service Pack 2 的累积更新包 7
注意: 因为版本具有累计性,所以每个新修补程序版本包含所有修补程序和附带上一个 SQL Server 2008 的所有安全修补程序的修补程序版本。Microsoft 建议您考虑将应用包含此修复程序的最新的修补程序版本。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2402659 SQL Server 2008 Service Pack 2 发布后,SQL Server 2008 生成发布
为特定的 SQL Server 服务包创建 Microsoft SQL Server 2008年的修补程序。必须将一个 SQL Server 2008 Service Pack 2 的修补程序应用到安装的 SQL Server 2008 Service Pack 2。默认情况下,在下一次 SQL Server service pack 中包含任何 SQL Server service pack 中提供的修补程序。

修补程序信息

Microsoft 提供了一个受支持的修补程序。然而,此修补程序仅用于解决本文中描述的问题。仅对出现这一特定问题的系统应用此修补程序。

如果此修复程序可供下载,则在此知识库文章顶部"提供修补程序下载"部分。如果未显示此部分,将申请提交到 Microsoft 客户服务和支持,以获取此修复程序。

注意: 如果出现其他问题或需要任何故障诊断时,您可能需要创建单独的服务请求。对于此特定的修补程序不需要照常收取支持费用到其他支持问题和事项。Microsoft 客户服务和支持电话号码,或创建单独的服务请求的完整列表,请访问下面的 Microsoft 网站: 注意: "提供修补程序下载"窗体显示获取此修复程序的语言。如果看不到您的语言,则修补程序没有那种语言的版本。

系统必备组件

若要应用此修补程序,您必须具有累积更新包 6 SQL Server 2008 Service Pack 2 的安装。

重新启动要求

应用此修补程序后,不需要重新启动计算机。

修补程序替换信息

此修补程序不替代以前发布的修补程序。

文件信息

此修复程序的全球版本具有的文件属性 (或更新的文件属性) 在下表中列出。日期和为这些文件的时间以协调世界时 (UTC) 列出。当您查看文件信息时,它将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用时区选项卡中日期和时间在控制面板中的项。

文件名称文件版本文件大小日期时间平台
Sqlservr.exe2007.100.4322.042,800,4802011 年 10 月月 07 日12:35x86
Sqlservr.exe2007.100.4322.057,971,5522011 年 10 月月 07 日11:51x64
Sqlservr.exe2007.100.4322.0111,266,1442011 年 10 月月 07 日11:27IA-64
状态
Microsoft 已经确认这是"适用于"一节中列出的 Microsoft 产品中的问题。
更多信息
若要在 SQL Server 中修复 arelated 问题,请参见下面的知识库文章:

从 SQL Server 中的 sys.syscommittab 表的重复键行

警告:本文已自动翻译

属性

文章 ID:2603910 - 上次审阅时间:08/12/2015 09:20:00 - 修订版本: 5.0

Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2012 Enterprise

  • kbtshoot kbqfe kbfix kbexpertiseadvanced kbsurveynew kbautohotfix kbhotfixserver kbmt KB2603910 KbMtzh
反馈