ORA-12537的另一种解决方式

      今天我的一位研发同事急匆匆的过来找我,说使用PL/SQL DERVELOPER连接某个核心数据库时,返回ORA-12537的错误,无法连接数据库了!
      这还得了,这是一个线上数据库,有业务在运行。赶快查看:
      ORA-12537的ORACLE官方错误解释:
     
Cause: "End of file" condition has been reached; partner has disconnected.

Action: None needed; this is an information message.

      达到什么条件了呢?
      检查监听,在另外主机使用tnsping也正常。正在想着问题,我这边的PL/SQL DEVELOPER突然又能连接了。但是研发的同事那边却说报错依然,无法连接。
       我突然感觉这可能和连接数有关系,立刻查看有关接入到这个数据库主机1521端口的连接数,320个,数据库的SESSIONS值是335(当然这里如果是超过了sessions的最大数目应该是报:ORA-00018: maximum number of sessions exceeded,除了后台进程应该也快要到达最大SESSION的数了)!如果再加入其他的连接,整个主机的网络连接数就非常多了。
      直接检查连接最多主机和程序,发现有个主机上的TOMCAT有74个数据库连接(应该是有问题的)。直接杀掉这个TOMCAT,所有报ORA-12537错误的程序都可以正常接入。
      连接数多,却没有报ORA-00018,但是一旦停止多个连接就可以正常连接数据库,看来这个ORA-12537错误和操作系统对网络的并发连接控制有着一定的关系。
      很多时候,我们对于ORA-12537的错误解决:
      在sqlnet.ora文件中将tcp.validnode_checking的值设为no,然后重启服务。
      而此次是通过减少并发网络连接来解决的。
      欢迎讨论指正。 -:)
      -----------------------------------------
      环境:
      HP-UX B.11.23 U ia64
      ORACLE 10.2.0.1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值