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

本文转自Be the miracle!博客51CTO博客,原文链接http://blog.51cto.com/miracle/82842如需转载请自行联系原作者


Larry.Yue

相关文章
|
Oracle 关系型数据库
Oracle实例启动失败 ORA-27300 ORA-27301 ORA-27302 新增一个实例,信号量就不够了
我们在一个客户上进行恢复完成后,在RAC的第二个节点,Oracle实例启动失败,有下面的提示信息
161 0
|
Oracle 关系型数据库 数据库
ORA-00600 3020 ORA-10567案例
PlateSpin克隆复制出的Oracle数据库服务器,往往启动数据库实例都会遇到一些杂七杂八的问题。今天测试DR环境时又遇到了一个特殊场景,在此之前,我已经遇到了下面两起案例: ORA-00600: internal error code, arguments: [kcratr1_last...
1391 0
|
Oracle 关系型数据库 数据库
ORACLE 12C连接时报ORA28040和ORA01017的错误
【一】环境说明 1.1 Oracle服务端版本:12.2.0.1 1.2 Oracle客户端版本:11.2.0.1 【二】问题说明 2.1 客户端连接服务端的时候报ORA-28040的错误。
4254 0
|
Oracle 关系型数据库 数据库