修补程序: 当您运行多个应用程序与 SQL Server 2012年中启用 SQL Server 2008 R2 中的多个活动结果集的 SQL Server 内部死锁监视器中的访问冲突

文章翻译 文章翻译
文章编号: 2723979 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

症状

情境 1:

假定您有多个客户端应用程序连接到 Microsoft SQL Server 2008 R2 的实例或 Microsoft SQL Server 2012年的实例。此外,在连接字符串中启用多个活动结果集 (MARS) 功能。当多个请求由这些应用程序发送一次时,在处理数据时,可能会发生死锁。在此情况下,SQL Server 内部死锁监视器中可能会出现访问冲突。

方案 2

请考虑以下情形:
  • 在您的计算机上应用了 Microsoft SQL Server 2012 sp1 的累积更新包 7。
  • 您有多个客户端应用程序连接到 SQL Server 2012年的实例。
  • 应用程序必须配置分布式事务处理协调器 (DTC) 或多个活动结果集 (MARS) 事务。
  • 同时,从这些应用程序发送多个请求,并在处理数据时,可能会发生死锁。
在这种情况下,SQL Server 内部死锁监视器中可能会出现访问冲突。

原因

因为事务互斥体则不会更新与新工作区,则会出现此问题。死锁监视器线程锁定枚举过程中访问此旧区,如果已释放旧的工作区,或者如果它没有清理正确,就会发生访问冲突。

解决方案

累积更新信息

问题是第一次更新修复了以下累计的 SQL Server。

对于 SQL Server 2012 SP1 的累积更新 9

对于 SQL Server 2012 SP1 的累积更新 1

SQL Server 2008 R2 sp2 的累积更新 3

对于 SQL Server 2012年的累积更新 4

SQL Server 2008 R2 sp1 的累积更新 8

有关累积更新 SQL Server

收起这个图片展开这个图片
assets folding start collapsed
为 SQL Server 的每个新的累积更新中包含的所有修补程序和所有安全修补程序,已包括在以前的累积更新。SQL Server 检查出最新的累积更新:
收起这个图片展开这个图片
assets folding end collapsed

热修复补丁程序信息

此修复程序更新交易记录的互斥体时要使用的新的工作区更改工作区。

可以从 Microsoft 获得支持的热修复补丁程序。但是,此修补程序仅能用于解决本文中描述的问题。此热修复补丁程序仅适用于正出现此特定问题的系统。

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

注意 如果出现其他问题或需要任何故障诊断,您可能需要创建单独的服务请求。到其他支持问题和事项,对于此特定的修补程序不需要将照常收取支持费用。Microsoft 客户服务和支持电话号码,或创建单独的服务请求的完整列表,请访问下面的 Microsoft 网站:
http://support.microsoft.com/contactus/?ws=support
注意 "修补程序下载可用"窗体显示获取此修复程序的语言。如果您看不到您的语言,这是因为热修复补丁程序不适用于该语言。

状态

Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。

更多信息

有关如何启用多个活动结果集 (MARS) 功能的详细信息,请访问以下 MSDN 网站:
如何启用 MARS

属性

文章编号: 2723979 - 最后修改: 2014年3月17日 - 修订: 4.0
这篇文章中的信息适用于:
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • Microsoft SQL Server 2012 Service Pack 1?当用于
    • Microsoft SQL Server 2012 Developer
    • Microsoft SQL Server 2012 Enterprise
    • Microsoft SQL Server 2012 Standard
关键字:?
kbtshoot kbqfe kbfix kbsurveynew kbexpertiseadvanced kbautohotfix kbmt KB2723979 KbMtzh
机器翻译
重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。
点击这里察看该文章的英文版: 2723979
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com