« Dell D600关机时"结束程序sample"问题解决 | Blog首页 | 《深入浅出Oracle》登上排行榜前三甲 »
Oracle的TNS-12502 错误原因及解决
作者:eygle |【转载时请以超链接形式标明文章出处和作者信息及本声明】链接:http://www.eygle.com/archives/2006/08/oracle_tns_12502.html
前几天收到一位读者朋友的来信,询问以下问题:
在我的监听日志中出现错误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.
也就是说只有在TNSNAMES.ORA文件中不包含CONNECT_DATA时会出现此问题。
那么当通过一些网络工具或HA工具等检测监听器端口时,日志中就可能记录如上错误。我们可以简单模拟一下,在客户端通过telnet数据库服务器的1521端口测试连通性:
C:\>telnet 172.16.30.11 1521
此时在日志中就会记录如下信息:
| TNS-12502: TNS:listener received no CONNECT_DATA from client 09-AUG-2006 16:21:03 * 12502 TNS-12502: TNS:listener received no CONNECT_DATA from client 09-AUG-2006 16:21:13 * 12502 TNS-12502: TNS:listener received no CONNECT_DATA from client 09-AUG-2006 16:21:22 * 12502 TNS-12502: TNS:listener received no CONNECT_DATA from client |
如果客户端都正常的话,此类错误并不会影响应用,当然也可以彻底检查找出根本原因。
历史上的今天...
>> 2005-08-09文章:
------
这篇 【Oracle的TNS-12502 错误原因及解决】来自 eygle.com | CSDN网摘| del.icio.us|Google订阅 | 鲜果订阅 | 抓虾订阅
By eygle on 2006-08-09 16:37 | Comments (4) | Posted to FAQ | Edit |
| 相关文章 | 随机文章 |
|
|
Statspack专题 ORA-600 kcbgtcr_13 未解决之问题记录 我的写作进度 EMC CX500硬盘再坏 2007上海Oracle Open World记事-之三 |
留言 (4)
谢谢大师的回复。
Posted by: olivenan at August 9, 2006 5:04 PM
如何彻底检查找出根本原因?
Posted by: Cucumber at December 4, 2008 2:53 PM
我的机器上也出现同样的问题,能否给出彻查的方法?谢谢!
Posted by: 单独 at February 26, 2009 4:14 PM
如果客户端都正常的话,此类错误并不会影响应用,当然也可以彻底检查找出根本原因。
如何彻底检查找出根本原因?能提示下吗?
Posted by: Anonymous at April 14, 2009 8:09 PM
