Oracle的TNS-12502错误原因及解决

  前几天收到一位读者朋友的来信,询问以下问题:

  在我的监听日志中出现错误TNS-12502: TNS:listener received no CONNECT_DATA from client

  经过查找资料了解到这种错误应该是客户端tnsnames.ora中没有写 CONNECT_DATA的原因,我检查过客户端的机器没有发现问题。

  目前的现象:

  1、每几分钟出现一次该错误(见附件),即使是在凌晨的时候也是,这段时间我们没有开发人员在凌晨时候使用Oracle。

  2、到目前为止也没有发现客户端机器不能正常连接数据库的情况。

  今天才有时间研究一下,对于TNS-12502错误,Oracle的解释如下:
复制内容到剪贴板
代码:
Error: ORA-12502 / TNS-12502
Text: TNS:listener received no CONNECT_DATA from client
Cause: No CONNECT_DATA was passed to the listener.
Action: Check that the service name resolved from TNSNAMES.ORA has the
CONNECT_DATA component of the connect descriptor.