oracle-应用连接数激增测试
阅读原文时间:2023年09月27日阅读:2

在生产环境遇见过表的连接数过高,导致系统宕机的问题,操作上是由于在大表上建立索引,造成全表锁。故手动在表加表级锁,表上的应用不停,查看Oracle数据库连接数是否激增。

1 应用正常运行,查看当前数据库的连接数:select count(1) from v$session;--连接数S1

2 将应用要更新的表,加表级锁:lock table T_testA in exclusive mode noWait;

3 查看锁表后,数据库的连接数:select count(1) from v$session;--连接数S2

4 查看数据库的最大连接数 select value from v$parameter where name='processes';--连接数S0

当发生了2操作之后,数据库的连接数S2激增越来越逼近S0说明当前数据库正在面临险境。

当出现这种情况,应该尽快找到阻塞会话的源头,杀死会话。更深层的原因在于是否应用的连接池未在合理的范围内。