Microsoft 将 Microsoft SQL Server 2008 或 Microsoft SQL Server 2008 R2 修补程序分发为一个可下载文件。 由于修补程序是累积的,因此每个新版本都包含以前的 SQL Server 2008 或 SQL Server 2008 R2 版本的所有修补程序和所有安全修补程序。
症状
在 Microsoft sql server 2008 中启用更改跟踪后,在 microsoft sql server 2008 R2、Microsoft SQL server 2012 或 SQL Server 2014 数据库中启用更改跟踪后,SQL Server 错误日志文件中会记录类似于以下内容的错误消息:
<Date><Time> <spid> 错误:2601,严重性:14,状态:1。 <Date><Time> <spid> 无法在对象 "syscommittab" 中插入具有唯一索引 "<索引名称>" 的重复键行。 <Date><Time> <spid> 错误:3999,严重性:17,状态:1。<Date><Time> <spid> 无法将提交表刷新到 dbid 中的磁盘 <数据库 ID>,因为错误2601。 有关详细信息,请查看错误日志。
此外,当 SQL Server 2008 尝试在数据库上执行检查点操作时,将收到2601错误代码。注意 有关 SQL Server 数据库检查点的概述,请转到以下 MSDN 网站:
解决方案
SQL Server 2008 R2 的 Service pack 信息
若要解决此问题,请获取最新的 SQL Server 2008 R2 服务包。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2527041如何获取最新的 SQL Server 2008 R2 服务包
累积更新信息
在以下 SQL Server 累积更新中首先修复此问题:
SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 我们建议你下载并安装 SQL Server 的最新累积更新:
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
有关 SQL Server 的增量服务模型的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
935897 从 SQL Server 团队提供的增量服务模型可提供报告问题的修补程序有关 SQL Server 更新的命名架构的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
822499 Microsoft SQL Server 软件更新程序包的命名模式有关软件更新术语的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684 用于描述 Microsoft 软件更新的标准术语的说明
更多信息
若要修复 SQL Server 中的相关问题,请参阅以下知识库文章:SQL server 中的 syscommittab 表中的重复键行