1. 找出哪个机器发起的session最多先,一般JAVA程序在ORACLE的V$SESSION表中都是记录为Thin,可以精确到机器名

–找出哪个机器发起的session最多
select o.sid, osuser,machine, count(*) num
    from v$open_cursor o, v$session s
where o.sid = s.sid
group by o.sid, osuser, machine
order by num desc

然后,查找出当前活动的SESSION,以便确定是哪个程序引起的游标泄漏。

–找出哪个机器发起的活动的session最多
select o.sid, osuser,machine, count(*) num
    from v$open_cursor o, v$session s
where o.sid = s.sid and s.status = ‘ACTIVE’
group by o.sid, osuser, machine
order by num desc

2. 查找出哪条sql执行最多,这样子一般看到sql就知道是哪个系统的问题

–找出哪条sql执行的最多
select o.SQL_TEXT, count(*) num
    from v$open_cursor o, v$session s
where o.sid = s.sid
group by sql_text
order by num desc

查找出当前活动,并且执行sql最多的程序

–找出哪条当前活动的sql执行的最多
select o.SQL_TEXT, count(*) num
    from v$open_cursor o, v$session s
where o.sid = s.sid and s.status = ‘ACTIVE’
group by sql_text
order by num desc

2 对 “Oracle游标超过最大数连接不上,以及优化Session方法”的想法;

发表评论

电子邮件地址不会被公开。 必填项已用*标注