in-doubt xact resolution サーバー構成オプションin-doubt xact resolution Server Configuration Option

適用対象: ○SQL Server XAzure SQL Database XAzure SQL Data Warehouse XParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

in-doubt xact resolution オプションは、 MicrosoftMicrosoft 分散トランザクション コーディネーター (MS DTC) で解決できないトランザクションの既定の結果を制御する場合に使用します。Use the in-doubt xact resolution option to control the default outcome of transactions that the MicrosoftMicrosoft Distributed Transaction Coordinator (MS DTC) is unable to resolve. トランザクションを解決できない原因は、復旧時の MS DTC のダウン タイムまたは状態が不明なトランザクション結果に関連している場合があります。Inability to resolve transactions may be related to the MS DTC down time or an unknown transaction outcome at the time of recovery.

次の表は、状態が不明なトランザクションの解決について考えられる結果の値を示しています。The following table lists the possible outcome values for resolving an in-doubt transaction.

結果の値Outcome value [説明]Description
00 推測しません。No presumption. 状態が不明なトランザクションを MS DTC で解決できない場合、復旧は失敗します。Recovery fails if MS DTC cannot resolve any in-doubt transactions.
11 コミットを推測します。Presume commit. MS DTC の状態が不明なトランザクションは、コミットされたと見なされます。Any MS DTC in-doubt transactions are presumed to have committed.
22 中断を推測します。Presume abort. MS DTC の状態が不明なトランザクションは、中断されたと見なされます。Any MS DTC in-doubt transactions are presumed to have aborted.

次の例のように、長時間にわたるダウン タイムの可能性を最低限に抑えるために、管理者はコミットまたは中断を推測するようにこのオプションを設定できます。To minimize the possibility of extended down time, an administrator might choose to configure this option either to presume commit or presume abort, as shown in the following example.

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 エラーを認識するために、既定値 (推測なし) のままにして復旧を失敗させることができます。Alternatively, the administrator might want to leave the default (no presumption) and allow recovery to fail in order to be made aware of a DTC failure, as shown in the following example.

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 は拡張オプションです。The in-doubt xact resolution option is an advanced option. sp_configure システム ストアド プロシージャを使用して in-doubt xact resolution の設定を変更するには、 show advanced options を 1 に設定する必要があります。If you are using the sp_configure system stored procedure to change the setting, you can change in-doubt xact resolution only when show advanced options is set to 1. 新しい設定は、サーバーを再起動しなくてもすぐに有効になります。The setting takes effect immediately without a server restart.

注意

分散トランザクションに関係するすべての MicrosoftMicrosoftSQL ServerSQL Server インスタンスで、このオプションを同じように構成すると、データの不整合を防ぐことができます。Consistent configuration of this option across all MicrosoftMicrosoftSQL ServerSQL Server instances involved in any distributed transactions will help avoid data inconsistencies.

参照See Also

RECONFIGURE (Transact-SQL) RECONFIGURE (Transact-SQL)
サーバー構成オプション (SQL Server) Server Configuration Options (SQL Server)
sp_configure (Transact-SQL)sp_configure (Transact-SQL)