分享交流
合作共赢!

oracle11g用户密码输入错误导致连接延迟验证问题总结

昨天从中午11点多开始导入财务资金数据库,大小是107GB,数据版本是Oracle11.2.04,一般情况下最慢6小时可以搞定,但是直到今早还处在导索引的状态,于是怀疑是表空间不足原因造成卡在这里这么长时间。果真,添加了一个表空间文件,过了大约20分钟的样子就导完了。

但是,后续发生了一件事情:导入数据库的用户密码连接特别慢(十几秒),其他用户包括system都试了连接特别快(瞬间)!

网上查资料说listener.log日志太大原因,于是我查看了是1.8G,备份好后,把原文件内容全部清除,重启监听服务。结果发现,问题还是依旧。

/data/oracle/app/diag/tnslsnr/ncdb-t02/listener/trace/listener.log

/data/oracle/app/diag/rdbms/nctest/nctest/trace/alert_nctest.log

然后看到有人说这是11g的特性,比如A用户因错误输入密码导致登陆越来越慢,从第三次密码错误的登录开始,每次延迟时间开始变成2秒、3秒并一次递增。既是这时提供正确的密码登录,会话也会延迟N秒,然后进行验证。不过一旦验证成功,会将失败计数清零,后续的错误登录会重新计数。

不过这只是单一会话尝试失败登录的情况,如果同时存在两个会话,则很快延迟验证时间就会达到10秒、20秒的级别。如果同时大量的连接采用错误的密码,基本上这个用户的登录就会被完全HANG住。其它用户使用正确密码(同一会话及其它会话)命令没有影响。

解决办法是通过设置EVENT=”28401 TRACE NAME CONTEXT FOREVER, LEVEL 1″进行屏蔽,脚本如下:(不需要重启)

此内容查看价格1立即购买

如多个应用使用同一用户登陆且密码出错,由于密码延迟验证的策略,导致所有后续的连接都被HANG住以及row cache lock、library cache lock问题。

最后,顺利解决问题,特此记录!

温馨提示:

其他Oracle数据库相关琼杰笔记参考文档:

【亲测无误】Oracle数据泵导入数据库案例

Oracle数据库常用基本命令收集!

创建oracle数据库和用户

oracle创建表空间、用户、用户授权、删除表空间、删除用户方法总结

赞(2) 打赏
未经允许不得转载:琼杰笔记 » oracle11g用户密码输入错误导致连接延迟验证问题总结

评论 抢沙发

评论前必须登录!

 

分享交流,合作共赢!

联系我们加入QQ群

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册