症状
请考虑以下情况:
-
您在 Microsoft SQL Server 2016 中有一个 AlwaysOn 可用性组(AG)数据库。
-
重新启动 Microsoft 分布式事务协调员(DTC)服务。
-
假设你在已启用 AG 的数据库中执行分布式事务。 在这种情况下,你可能会注意到,事务失败,出现类似于以下的错误:
消息8510,级别20,状态3,行 LineNumber 登记操作失败:0x8004d01c (XACT_E_CONNECTION_DOWN)。 SQL Server 无法注册 Microsoft 分布式事务处理协调器(MS DTC)作为此事务的资源管理器。 客户端或资源管理器可能已停止该事务。 消息596,级别21,状态1,行 LineNumber 无法继续执行,因为会话处于 kill 状态。 消息0,级别20,状态0,行 LineNumber 当前命令出现严重错误。 应丢弃结果(如果有)。
解决方法
此问题的解决方法是当您重新启动 SQL Server 服务时,可能不会收到该错误。
解决方案
在 SQL Server 的以下累积更新中修复了此问题:
SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新:
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
了解 Microsoft 用于描述软件更新的 术语。