none
SqlServer2005 Oracleリンクサーバーでのエラー RRS feed

  • 質問

  • お世話になります。

    SqlServer2005とOracle11gをリンクサーバーで接続しており、Oracle側のデータをSELECTしている処理で、

    「リンク サーバー "XXXX" の OLE DB プロバイダ "MSDAORA" から、メッセージ "ORA-03135: 接続が失われました" が返されました。」

    が返答されます。(直前の処理等は、Oracle側から正常に取得できており、ネットワーク障害等は考えにくい状態です。)

    Oracle側の問題もありますが、Sqlserverから問い合わせしている処理も重く、QueryTimeOurtが発生しているかも?とも思っているのですが、

    上記エラーは、SqlServer側のQueryTimeOutでも発生するのでしょうか?

    2012年10月17日 7:06

回答

  • 追加情報がございます。

    上記対応にて、数回は動作しましたが、再度、同様のエラーが発生し、SqlServer側のタイムアウトでは、なく

    Oracle側の問題である可能性が高くなりました。

    Oracle側の調査を行っており、こちら側の対応は、一旦終了となりました。

    その為、本件は、この投稿で一旦、閉じさせて頂きます。

    ありがとうございました。

    2012年10月23日 1:07

すべての返信

  • 状況の補足、追加情報がございます。

    上記エラーは、sqlcmdを利用したバッチファイルから実行した際に発生していました。(Oracleは10gでした。)

    また、sqlcmdは -tのオプションを設定せず、タイムアウト無制限の状態、SqlServer2005のリンクサーバーのクエリタイムアウトは'0'を設定していました。

    (リンクサーバーのクエリタイムアウト’0’は、SqlServerの自動算出時間の25倍の設定になるはず。)

    上記構成でしたが、リンクサーバーのクエリタイムアウトを十分に長い時間に設定すると、エラーとならず、正常完了しました。

    想定結果となりますが、上記ORA-03135エラーは、SqlServer側のタイムアウトの場合も、ORACLE側のエラー番号して出力しているように見えます。

    (SqlServernoエラーログにの該当時刻には、タイムアウトのエラーは、見受けられませんでした。)

    このあたりの、実装内容についてご存じの情報、文献等あれば、ご教授下さい。

    2012年10月18日 5:42
  • 追加情報がございます。

    上記対応にて、数回は動作しましたが、再度、同様のエラーが発生し、SqlServer側のタイムアウトでは、なく

    Oracle側の問題である可能性が高くなりました。

    Oracle側の調査を行っており、こちら側の対応は、一旦終了となりました。

    その為、本件は、この投稿で一旦、閉じさせて頂きます。

    ありがとうございました。

    2012年10月23日 1:07