次の方法で共有


in-doubt トランザクション解決 サーバー構成オプション

未解決のトランザクション解決 オプションを使用して、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  
  

不明な xact 解決オプションは、高度なオプションです。 詳細オプションを表示するオプションが 1 に設定されている場合のみ、sp_configure システム ストアド プロシージャを使用して疑わしい xact 解決を変更できます。 新しい設定は、サーバーを再起動しなくてもすぐに有効になります。

分散トランザクションに関係するすべての MicrosoftSQL Server インスタンスでこのオプションを一貫して構成すると、データの不整合を回避できます。

こちらもご覧ください

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