oracle 连接数过多导致系统非常慢分析总结
个人分类:数据库维护
1 问题描述
2010年1月19日,客户数据库外面客户端无法连接,这时系统非常慢,连操作系统命令ls显示也出不来,然后通过杀掉进程,重启中间件应用服务器,重启数据库后,数据库恢复正常。
现把本次数据库故障分析过程总结如下。
2 数据库环境
2.1 数据库系统
版本 环境 数据库名 实例名 IP地址 所在主机
9.2.0.8 单机 ora9 ora9 xxxxx P570a
3 故障分析
当时通过同事查连接数,LOCAL=NO的进程连接数已经达到990,而正常时只有100-150左右,查询alert.log时发现1.19号有以下报错
Tue Jan 19 10:50:49 2010
skgpspawn failed:category = 27142, depinfo = 17, p = fork, loc = skgpspawn5
skgpspawn failed:category = 27142, depinfo = 11, p = fork, loc = skgpspawn3
Tue Jan 19 10:52:49 2010
skgpspawn failed:category = 27142, depinfo = 11, p = fork, loc = skgpspawn5
skgpspawn failed:category = 27142, depinfo = 11, p = fork, loc = skgpspawn3
skgpspawn failed:category = 27142, depinfo = 11, p = fork, loc = skgpspawn3
skgpspawn failed:category = 27142, depinfo = 11, p = fork, loc = skgpspawn3
skgp

本文记录了一次由于Oracle数据库连接数过多,导致系统响应极慢的问题。在故障发生时,LOCAL=NO的进程连接数异常增长,超过正常水平。通过对alert.log和listener.log的日志分析,发现skgpspawn进程失败和TNS-12540错误,表明系统资源达到极限。解决方法包括限制并发连接数,优化应用连接管理和定期清理无用连接。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



