oracle 11g不能连接,卡住,ORA-12537 TNS-12560 TNS-00530 TNS-12502 tns-12505 ora-609 Windows Error: 54: Unknown error 解决方案。
今天折腾了一下午,为了查这个问题。。找了N多方案,因为自己粗心走了弯路,其实一开始就百度找到答案了,但是因为粗心没找对文件而错过。
网上文章提到的基本是这几类原因:网络问题,机器名/IP,DNS问题,让设置sqlnet.ora跟listener.ora;或listener.log 达到了4G,无法写入了。
我的案列中,环境、情景完全和下文中一模一样。
sqplus / 能进入。 sqplus user@orcl就卡死。
lsnrctl start/stop/status 就各种卡各种错误..
解决方案:diag目录下的listener.log日志文件已经达到4G 无法再继续写入,所以停掉OracelListener服务后删除listener.log就可恢复正常。 注意,文件是 listener.log,不是listener.xml,不要找错了,找不到就文件搜索一下,看是不是到4G了。我就是因为第一次凭感觉进错了目录,误把listener.xml当成listener.log,发现文件很小,就忽略了这个方案。
====================引用文章如下================
数据库:oracle11g
问题发生:一套正常跑了一年的应用系统,忽然无法连接上数据库,但是另外一个应用可以正常链接,数据入库正常。
数据库服务器端查看:
使用 lsnrctl status 查看监听状态卡住,10分钟左右结果才会反馈。
plsql无法连接。
重启监听问题依旧。
alter日志文件中报错:
Fatal NI connect error 12537, connecting to:
(LOCAL=NO)
VERSION INFORMATION:
TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
Oracle Bequeath NT Protocol Adapter for 64-bit Windows: Version 11.2.0.1.0 - Production
Windows NT TCP/IP NT Protocol Adapter for 64-bit Windows: Version 11.2.0.1.0 - Production
Time: 17-6月 -2015 09:17:49
Tracing not turned on.
Tns error struct:
ns main err code: 12537
TNS-12537: TNS: 连接关闭
ns secondary err code: 12560
nt main err code: 0
nt secondary err code: 0
nt OS err code: 0
opiodr aborting process unknown ospid (6052) as a result of ORA-609
使用dos端sqlplus登录正常,查有最新数据入库。怀疑是监听问题!
查看监听log文件 $ORACLE_HOME/network/log 报错如下
<msg time='2015-06-16T02:14:18.877+08:00' org_id='oracle' comp_id='tnslsnr'
type='UNKNOWN' level='16' host_id='WINDOWS-35NMUNE'
host_addr='fe80::7840:6685:828f:4f5a%17'>
<txt>TNS-12560: TNS: 协议适配器错误
TNS-00530: 协议适配器错误
64-bit Windows Error: 53: Unknown error
TNS-12518: TNS: 监听程序无法分发客户机连接
TNS-12571: TNS: 包写入程序失败
TNS-12560: TNS: 协议适配器错误
TNS-00530: 协议适配器错误
64-bit Windows Error: 54: Unknown error
</txt>
</msg>
报错 ora-12518 监听无法分发客户端连接。 但在oracle中使用 show parameter session 与select count(×) from v$session; 对比发现不是连接数限制问题。
使用tnsping IP 没有反应。
后继续查看listener的log文件 $ORACLE_HOME/network/trace 发现listener.log 文件已经达到4G 无法再继续写入,最后写入日期也在前两天,于是删除该log文件,启动监听,正常~!!
最终原因发现是log文件写满,看来以后要定期清理这个文件了。这么小一个问题都使应用系统无法连接上,细节决定成败。 此类文件要见一个记录一个 同时在同类系统中排查。
========原文地址:https://www.cnblogs.com/hanbo112/p/4583047.html =========
来源:oschina
链接:https://my.oschina.net/u/160743/blog/1832401