微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ORACLE-查询最终阻塞者进程脚本

1、查询最终阻塞者进程:

select 'alter system kill session '''|| sid ||',' || serial# || ',@'|| inst_id ||''' immediate;',
   sys_connect_by_path(a.SID || '@' || a.inst_id, ' <- ') tree, --  tree最后一个为最终阻塞者.
   a.inst_id,   a.process,   a.sid,   a.serial#,   a.sql_id,   a.event,   a.status,   a.program,
   a.machine,   connect_by_isleaf as isleaf,   level as tree_level
from gv$session a
 start with a.blocking_session is not null
 connect by (a.sid || '@' || a.inst_id) = prior
       (a.blocking_session || '@' || a.blocking_instance);

2、ORA-14450:试图访问已经在使用的事务处理临时表:

-- ORA-14450: 试图访问已经在使用的事务处理临时表
select 'alter system kill session ''' || a.SID || ',' || a.SERIAL# || ',@' || inst_id || ''' immediate;' ,a.* from gV$session a
    where a.SID in (select sid from gv$enqueue_lock t where t.type='TO')
    --and status='INACTIVE'
    --and a.program like '%JDBC Thin Client%'
    ; 

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐