SQL Server 2000とMySQLの間の分散トランザクションが機能しなくなった
-
16-10-2019 - |
質問
MySQL SlaveデータベースからデータをSQL Server 2000データベースにコピーすることに成功しています。 MySQLサーバーはリンクされたサーバーです。 ODBCコネクタのV3.51とV5.1.8を使用してMySQLを提供しました。
MySQLのテーブルからSQL Serverの一時テーブルに挿入しようとしているだけです OPENQUERY
次のエラーが発生します。
サーバー:MSG 7391、レベル16、状態1、行1
OLE DBプロバイダー「MSDASQL」が分散トランザクションを開始できなかったため、操作は実行できませんでした。
OLE/DBプロバイダーはメッセージを返しましたメッセージ:[MySQL] [ODBC 3.51ドライバー]オプション機能はサポートされていません
OLE DB ERROR TRACE [OLE/DB PROVIDER 'MSDASQL' ITRANSACTIONJOIN :: JOINTRANSACTIONは0x8004D00Aを返します]。
このエラーは、MySQLマスターとスレーブの間の複製が失敗したときに発生し始めました。これは修正されましたが、上記のエラーは持続します。
MySQL側でやる必要があることはありますか? SQL Server側の提案はありますか?私はすでにDTCの再起動とサーバーの再起動を試みました。
ありがとう
解決
誰かがStackoverFlowに関連する問題の解決策を投稿しました:
https://stackoverflow.com/questions/5945435/sql-server-2000-linked-server/6651704#6651704
他のヒント
私の最良の推測では、Linuxボックスで使用している分散トランザクションコーディネーターを再起動する必要があるか、構成が何らかの形で変更され、修正する必要があることです。