Oracle上process爆满,session数远远低于process数

博客内容描述了在服务器上遇到Oracle数据库ORA-00020错误,即最大进程数超出。通过查询发现当前process数量远超默认限制1200,达到4000,而session数为100。分析可能是由于客户端频繁尝试连接但未成功,导致大量挂起的进程。通过查看监听日志,找出不同IP的连接次数,以便进一步定位问题并解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

服务器上经常报错ORA-00020:maximum number of processes(1200)exceeded

查看当前process数:

select count(1) from v$process;

查看当前session数:

select count(1) from v$session;

结果看出,process数为4000,session数为100,量级差很多

可能因为客户端有不断尝试连接服务器,没有连接成功,所以查看监听日志上不同IP连接次数:

查找监听日志:

find / -name listener.log

路径为/u01/app/oracle/diag/tnslsnr/username/listener/trance/listener.log

进入日志路径:

cd /u01/app/oracle/diag/tnslsnr/username/listener/trance/

查看监听日志中不同时间段,不同IP的连接次数

$ fgrep "22-JUN-2022" listener.log |fgrep "establish" |awk -F* '{print $1 " " $3}'|awk -F= '{ print $1 " " $4}'|sed -e 's/ .....$//g'|awk '{print $1 " " $2 " " $4}'|cut -b-14,21- |sort |uniq -c

查看结果如下:

 现在可以去找对应IP客户端的责任人的麻烦去了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值