0

リモート コンピューターを参照するリンク サーバー接続からデータを読み込もうとすると、次のエラーが表示されます。

リンク サーバー "DATABASENAME" の OLE DB プロバイダー "DBDRIVER" が分散トランザクションを開始できなかったため、操作を実行できませんでした。
リンク サーバー "DATABASENAME" の OLE DB プロバイダー "DBDRIVER" から、"アクティブなトランザクションはありません" というメッセージが返されました。

両方のトランザクション パートナーで分散トランザクション コーディネーター サービスが実行され、ネットワーク接続が正しく許可されていることを確認しました。

4

1 に答える 1

0

この問題は、サーバーがアドホック分散クエリを許可するように構成されていないために発生しました。以下のスクリプトを使用してサーバーで設定を有効にすると、クエリは成功しました。

sp_configure 'ad hoc distributed queries', 1 
go 
reconfigure with override 
go 

情報はこのドキュメントから得たもので、トラブルシューティングの整理に役立ちました。要するに、次のことをお勧めします。

  1. DTC サービスが実行されていることを確認します
  2. DTC 設定をチェックして、ネットワークにアクセスできることを確認します
  3. DTC トラフィックがすべてのファイアウォールを通過できるようにする
  4. クエリで SET XACT_ABORT ON を使用する
  5. SQL Server で「アドホック分散クエリ」構成オプションを有効にしました
于 2013-10-14T20:53:44.867 に答える