ORA-609 原因及排查

alert日志里不定期会出现ORA-609错误,大致内容如下:

Fatal NI connect error 12537, connecting to:
 (LOCAL=NO)
VERSION INFORMATION:
TNS for HPUX: Version 11.2.0.3.0 - Production
Oracle Bequeath NT Protocol Adapter for HPUX: Version 11.2.0.3.0 - Production
TCP/IP NT Protocol Adapter for HPUX: Version 11.2.0.3.0 - Production
  Time: 19-OCT-2014 20:24:16
  Tracing not turned on.
  Tns error struct:
    ns main err code: 12537    
TNS-12537: TNS:connection closed
    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 (2734) as a result of ORA-609
Sun Oct 19 21:27:24 2014

首先,这个“opiodr aborting process unknown ospid (2734) as a result of ORA-609”消息仅仅是说明了由于ORA-609,使Oracle数据库专用进程被关闭了,ORA-609意味着不能通过监听把它附加到即将到来的连接上,因此服务器进程被终止(关闭)。
客户端连接有6个步骤(以上的错误,在第3步与第4步之间时,客户端连接就关闭了):
1、客户端发起一个connection连接监听
2、监听启动一个专属进程(服务器进程,也就是我们通常说的LOCA=NO进程)用于接收这个connection
3、在专属进程启动之后,监听会将这个connection传递给这个专属进程
4、专属进程通过这个connection来跟客户端握手
5、专属进程跟客户端信息交换需要建立一个session
6、session打开

可能引起的原因:
1、客户端在启动连接后改变主意并立即关闭连接
2、客户端崩溃
3、防火墙切断了连接
4、一些针对客户端的 Oracle 超时设置

解决方案:
1、因为 listener.log 中的条目只包含 CONNECT _ DATA 和 CID 相关信息,所以我们需要检查客户机配置是否有任何 sqlnet 超时

你可能感兴趣的:(故障解决,数据库,oracle,数据库开发,dba)