Oracle Kill Lock

1. 查找存在锁阻塞的会话:

select sid,serial#,program,machine,username,event,blocking_instance,blocking_session from gv$session where wait_class <> 'Idle';

blocking_instance        锁源所在实例

blocking_session         锁源 SID


2. 根据 blocking_session 找到锁源:

select sid,serial#,program,machine,username,event,blocking_instance,blocking_session,paddr,sql_id,prev_sql_id from gv$session where inst_id=1 and sid= 157 ;

Sql_id        正在执行的SQL语句的ID

prev_sql_id      最后一次执行的SQL语句的ID

有时最后执行的SQL语句并不一定是引起阻塞的语句。


3. 根据 sql_id prev_sql_id 查看 sql_text

select sql_text from v$sql where sql_id='61d2zmyjyc3km';


4. 结束锁源会话:

alter system kill session ' 472 , 23983 ,@1' immediate;


请使用浏览器的分享功能分享到微信等