数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

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


发布日期:2021年11月01日
 
Oracle的TNS-12502错误原因及解决

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

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

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

目前的现象

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

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

今天才有时间研究一下对于TNS错误Oracle的解释如下

Error:ORA / TNS

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 TNSNAMESORA has the

CONNECT_DATA component of the connect descriptor

也就是说只有在TNSNAMESORA文件中不包含CONNECT_DATA时会出现此问题

那么当通过一些网络工具或HA工具等检测监听器端口时日志中就可能记录如上错误我们可以简单模拟一下在客户端通过telnet数据库服务器的端口测试连通性

C:\>telnet

此时在日志中就会记录如下信息

TNS: TNS:listener received no CONNECT_DATA from client

AUG :: *

TNS: TNS:listener received no CONNECT_DATA from client

AUG :: *

TNS: TNS:listener received no CONNECT_DATA from client

AUG :: *

TNS: TNS:listener received no CONNECT_DATA from client

如果客户端都正常的话此类错误并不会影响应用当然也可以彻底检查找出根本原因

上一篇:oraclegroupby使用

下一篇:Oracle10g学习之闪回数据库