您的位置:首页 > 大数据 > 人工智能

RAC 中 ORA-12516: TNS: listener could not find available handler with matching protocol stack

2012-06-07 09:44 1451 查看
现象在DB上执行sqlplus apps/apps正常,如果执行sqlplus apps/apps@prod1 就会出现ORA-12516的错误。

SQLNet.log中的日志:

Fatal NI connect error 12516, connecting to:

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=compardrac1)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=PROD)(INSTANCE_NAME=PROD1)(CID=(PROGRAM=sqlplus@compardrac2)(HOST=compardrac2)(USER=oraprod))))

VERSION INFORMATION:

TNS for Solaris: Version 10.2.0.5.0 - Production

TCP/IP NT Protocol Adapter for Solaris: Version 10.2.0.5.0 - Production

Time: 07-JUN-2012 00:50:51

Tracing not turned on.

Tns error struct:

ns main err code: 12564

TNS-12564: TNS:connection refused

ns secondary err code: 0

nt main err code: 0

nt secondary err code: 0

nt OS err code: 0

怎么看怎么都不像是Processes不足,lsnrctl status listener_compardrac1也看不出问题来,最后查看listener的service(lsnrctl service listener_compardrac1)发现PROD1对应的是compardrac2vip,从日志里面也可以看出来,Host=compardrac1,但是后面CID里面的信息却是compardrac2,看来是listener handle的Instance信息有错。

回想到DB之间是做了loading_balance的,启动的时候crs_start -all,两边的listener起的快,instance起的慢,listener Handle的时候给串了。知道原因就好办了,把RAC服务一台一台的启动就可以避免这个问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐