"非转交计划程序"错误和 SQL Server 或 SQL Server 2008 R2 停止 Windows Server 2008 中,或在 Windows Server 2008 R2 间歇性地响应

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

本文内容

症状

假定正在运行 Windows Server 2008 或 Windows Server 2008 R2 的计算机上安装 Microsoft SQL Server 或 Microsoft SQL Server 2008 R2。当应用程序连接到 SQL Server 或 SQL Server 2008 R2,通过使用 Microsoft SQL Server 本机客户端 10.0 时,您将间歇性地接收到"转交非计划程序"错误。

请注意 "非转交计划程序"中的每个错误登录 SQL Server 或 SQL Server 2008 R2 的错误日志文件。

此外,SQL Server 停止间歇性地响应。若要解决此问题,您可能必须重新启动 SQL Server。

请注意
如果您已经安装了 SQL Server 2008 Service Pack 2 (SP2),未出现"转交非计划程序"错误,并 SQL Server 2008年将不会停止响应。但是,您可能会收到类似于以下错误消息:
错误代码 26073 的 / / ErrorFormat: 关闭 TCP 连接,但 SQL Server 的子进程可能持有该连接的套接字的副本

原因

因为 SQL Server 本机客户端 10.0 处理 TCP 套接字关闭调用不正确,则会出现此问题。

解决方案

请注意
如果您最近应用到安全公告 MS11-049 根据 SQL Server GDR 修复,不能应用本文中提及的累积更新。

当您尝试通过使用累积更新安装程序应用修补程序时,您将收到一条类似于以下的错误信息:
SQL Server 实例上已安装具有更高版本的 SQL Server 更新实例名称>,因此无法应用新的 SQL Server 更新。已安装 SQL Server 更新的版本是 GDR 10.2.4064.0 (10.2.4310.0) 与 KB2494089,在当前的 SQL Server 更新 10.2.4272.0 与 KB2467239。
在这种情况下,您必须应用 GDR 程序包包含除了 MS11-049 问题的修补程序此知识文库文章中提到的问题的修补程序。若要查找适用于您区域的 SQL Server 版本的相应 GDR 和 QFE 程序包,请参阅以下安全公告的常见问题解答部分:
http://www.microsoft.com/technet/security/bulletin/MS11-049.mspx
例如,如果您正在运行 SQL Server 2008 Service Pack 2,并且您应用此 GDR 修补程序 KB2494089,以获取此修复程序的 KB2491214,您必须应用 QFE KB2494094 更新。

累积更新信息

要解决此问题,请将 SQL Server 和计算机上运行的 Windows 服务器应用合适的更新。

请注意 您可能会遇到此问题,在客户端应用程序中使用 SQL Server 本机客户端和一个函数 (如 CreateProcess 函数) 创建新的子进程。在这种情况下,您有两个修补程序适用于 Windows 服务器和 SQL Server。

SQL Server 的更新

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

对 Windows 服务器的更新

对于 Windows Server 2008 R2 的修补程序
976932 Service Pack 1 Windows 7 和 Windows Server 2008 R2 有关的信息
Windows server 2008 的修补程序
2398202 应用程序可能会停止响应在 Windows Server 2008 中,或在 Windows Vista 中,应用程序关闭套接字连接或关闭时

状态

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

替代方法

重要 此节、 方法或任务包含说明如何修改注册表的步骤。但是,如果注册表修改不当可能会出现严重的问题。因此,请确保您认真执行这些步骤。为增加保护,请修改之前备份注册表。然后,您可以在出现问题时还原注册表。有关如何备份和还原注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756 如何备份和还原在 Windows 注册表
若要解决此问题,请添加 SuperSocketNetlib\Tcp\TcpAbortiveClose 中的注册表项值 MSSQLServer.

为此,请执行以下步骤:
  1. 打开注册表编辑器。为此,您的操作系统中使用相应的方法:
    • 在 Windows Vista 中,单击 启动类型 注册表编辑器 在中 开始搜索 框中,并按 ENTER。
    • 在 Windows XP 中,单击 启动单击 运行类型 注册表编辑器然后单击 确定.
  2. 找到并单击以下注册表子项。
    • 对于 SQL Server 或 SQL Server 2008 R2 的默认实例,请单击下面的注册表子项:
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10。MSSQLSERVER\MSSQLServer\SuperSocketNetLib\Tcp\

    • 对于 SQL Server 或 SQL Server 2008 R2 的命名实例,请单击下面的注册表子项:
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10。(实例名称) \MSSQLServer\SuperSocketNetLib\Tcp\
  3. 在上 编辑 菜单指向 然后单击 双字节值.
  4. 类型 TcpAbortiveClose然后按 ENTER 键。
  5. 在上 编辑 菜单中,单击 修改.
  6. 单击 十进制然后键入 1 在中 值数据 框中。
  7. 退出注册表编辑器。

参考


有关如何安装 SQL Server 本机客户端的详细信息,请访问下面的 Microsoft 开发人员网络 (MSDN) 网站:
如何安装 SQL Server 本机客户端
SQL Server 为增量的处理模型的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
935897 增量的处理模型都可用从 SQL Server 团队提供的报告的问题的修补程序
有关命名架构的 SQL Server 更新的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
822499Microsoft SQL Server 软件更新程序包的新命名架构
有关软件更新术语的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684 用于描述 Microsoft 软件更新的标准术语的说明

属性

文章编号: 2491214 - 最后修改: 2011年6月28日 - 修订: 2.0
这篇文章中的信息适用于:
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Enterprise Evaluation
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Express with Advanced Services
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Standard Edition for Small Business
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
关键字:?
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2491214 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 2491214
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