>  기사  >  데이터 베이스  >  altersystemkillsessionimmediate

altersystemkillsessionimmediate

WBOY
WBOY원래의
2016-06-07 15:55:502468검색

今天工作中遇到一问题:执行一个存储过程,执行了好久没有执行完,后来发现表被锁了。 select * from v$locked_object select * from user_objects where object_id = 对象id--(可以从v$locked_object表中查到) select * from V$session where sid = 会话id-

今天工作中遇到一问题:执行一个存储过程,执行了好久没有执行完,后来发现表被锁了。

select * from v$locked_object

select * from user_objects where object_id = 对象id--(可以从v$locked_object表中查到)

select * from V$session where sid = 会话id--(可以从v$locked_object表中查到,session_id)

alter system kill session 'sid serial#'--(可以从v$session查到)(用来终止会话,不释放资源)

alter system kill session 'sid serial#' immediate --(终止会话,释放资源)

在操作系统级别通过杀死线程也可以终止会话并释放资源:
select s.sid, spid, osuser, s.program
from v$process p, v$session s where p.addr=s.paddr;--(查询spid)

select instance_name from v$instance;--(查询实例名)

C:\>orakill instance_name spid --即可杀死线程释放资源,适用于windows系统.linux系统用kill -9 spid,没测试过linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.