株式会社コーソル

KNOWLEDGE

コーソルの技術情報

コーソルでは経験豊かなエンジニアが、Oracle Databaseに関するお役立ち情報を発信しています。
データベースのチューニングや設定にお役立ていただけます。

KNOWLEDGE検索人気のキーワード

Oracle DB Tips

ORA-12502: TNS: リスナーがクライアントからCONNECT_DATAを受信していません。(TNS-12502)

01.ORA-12502 (TNS-12502)エラーとはどのようなエラーか?

クライアントからOracleデータベースに接続する際、クライアントはリスナーへ接続を要求します。クライアントとリスナー間で、TCP コネクションが確立されたあと、クライアントはCONNECT_DATAと呼ばれる接続先サービスに関する情報をリスナーに送信します。何らかの理由で、リスナーが接続先の CONNECT_DATA を受信できなかった場合、ORA-12502エラーが発生します。

02.ORA-12502エラーの出力例

リスナーのログに以下のように出力されます。

24-FEB-2012 03:00:27 * 12502
TNS-12502: TNS:listener received no CONNECT_DATA from client

03.ORA-12502の一般的な発生要因と対処

ORA-12502は一般に以下の要因で発生します。

  • CONNECT_DATA が渡される前に TCP コネクションが切断された
  • Oracle Net 接続以外の接続がリスナーに対して行われた

 

CONNECT_DATA が渡される前に TCP コネクションが切断された

リスナーが、以下のような原因で、クライアントからの CONNECT_DATA を受信できない状況で、TCP コネクションが切断された場合に発生します。

  • クライアント、リスナー間のネットワークの問題
  • クライアントのリソース不足

 

上記の問題が発生していないか、確認してください。

Oracle Net 接続以外の接続がリスナーに対して行われた

通常、接続時のエラーについてはリスナーだけではなく、クライアントのsqlnet.log にもエラーが出力されます。しかし、sqlnet.log にエラーが出力されていない場合は、Oracle Net 接続以外の方法で、リスナーに対して接続が行われた可能性も考えられます。以下の要因について調査を検討してください。

  • 何らかの監視ツールがLISTENERの監視を行うために接続した
  • リスナーのポートに対して telnet 等のアプリケーションにより何らかの接続要求が行われた

04.キーワード

ORA-12502 TNS-12502 リスナー CONNECT_DATA