由密码错误引发的ORA-03135

同事反映某个客户的ERP UAT环境数据库登录不上。连接时超时,同时出现错误:
SQL*Plus: Release 11.2.0.4.0 Production on 星期四 6月 8 11:44:55 2017


Copyright (c) 1982, 2013, Oracle.  All rights reserved.


ERROR:
ORA-03135: 连接失去联系
进程 ID: 0
会话 ID: 0 序列号: 0

一开始认为是网络问题,但是当我SSH到主机时,本机登录也有这个问题。
但是当我检查监听以及实例状态时,并未发现问题。 
同时在alert_INSTANCE_ID.log中发现了大量TNS有关的错误。
如:
WARNING: inbound connection timed out (ORA-3136)

Fatal NI connect error 12170.


  VERSION INFORMATION:
TNS for Linux: Version 11.2.0.4.0 - Production
Oracle Bequeath NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
  Time: 08-JUN-2017 12:37:52
  Tracing not turned on.
  Tns error struct:
    ns main err code: 12535
    
TNS-12535: TNS:operation timed out
    ns secondary err code: 12606
    nt main err code: 0
    nt secondary err code: 0
    nt OS err code: 0
  Client address: (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=58888))

怀疑是TNS TIMEOUT设置问题。修改了 sqlnet.ora,修改参数:SQLNET.INBOUND_CONNECT_TIMEOUT=0
listener.ora:   INBOUND_CONNECT_TIMEOUT_LISTENER=0

重启监听之后依旧无果,错误依旧存在
尝试用scott用户去登录,却能够正常登录数据库

这时候,想去做个oradebug, 同时,脑子里也想应该登录是被什么等待事件阻塞了。

查询v$session_blockers, 发现了3000多条记录,等待事件都是library cache lock。
同时发现会话都是来自于jdbc客户端, 于是停止了java应用。于是等待事件开始消失,同时也能够开始正常登录。

使用java应用的数据库用户名,密码登录数据库时,一直提示密码错误。 难道是密码错了?
将用户密码修改为配置文件中配置的用户密码,同时启动java应用,没有发现其他异常。

进一步看alert日志,也没有发现有新的TNS或者登录相关的错误。

获得的经验:不要一开始就认为这个是网络问题导致, alert日志中的告警肯定都有来源。
                 基本上从等待事件能发现很多问题的蛛丝马迹

MOS相关BUG,文档:   文档 ID 19867671.8

Bug 19867671  "library cache lock" caused by wrong password login - superseded





来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8520577/viewspace-2140433/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8520577/viewspace-2140433/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值