Oracle Kill Lock

来源:这里教程网 时间:2026-03-03 15:51:21 作者:

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;

相关推荐