in-doubt xact resolution 选项

使用 in-doubt xact resolution 选项可以控制 Microsoft 分布式事务处理协调器 (MS DTC) 无法解决的默认事务结果。事务无法解决可能与 MS DTC 停止工作或恢复时的未知事务结果有关。

下表列出了解决有疑问的事务可能出现的结果值。

结果值 说明

0

没有假设。如果 MS DTC 无法解决任何有疑问的事务,恢复就会失败。

1

假设提交。假设已提交任何 MS DTC 有疑问的事务。

2

假设中止。假设已中止任何 MS DTC 有疑问的事务。

若要尽可能减少扩展的停止工作时间,管理员可以选择将此选项配置为假设提交或假设中止,如以下示例所示。

sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
sp_configure 'in-doubt xact resolution', 2 -– presume abort
GO
RECONFIGURE
GO
sp_configure 'show advanced options', 0
GO
RECONFIGURE
GO

另外,管理员也可能希望保留默认值(没有假设)并允许恢复失败,以便了解 DTC 故障,如以下示例所示。

sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
sp_configure 'in-doubt xact resolution', 1 -– presume commit
GO
reconfigure
GO
ALTER DATABASE pubs SET ONLINE –- run recovery again
GO
sp_configure 'in-doubt xact resolution', 0 –- back to no assumptions
GO
sp_configure 'show advanced options', 0
GO
RECONFIGURE
GO

in-doubt xact resolution 选项是一个高级选项。如果使用 sp_configure 系统存储过程来更改该设置,则只有在 show advanced options 设置为 1 时才能更改 in-doubt xact resolution。更改后的设置将立即生效,而不需要重新启动服务器。

ms179586.note(zh-cn,SQL.90).gif注意:
在任何分布式事务所涉及的所有 Microsoft SQL Server 实例中,使此选项的配置始终保持一致,有助于避免数据的不一致。

请参阅

概念

设置服务器配置选项

其他资源

RECONFIGURE (Transact-SQL)
sp_configure (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助