这篇文章主要讲解了“Oracle Kill Lock的使用方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“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;
感谢各位的阅读,以上就是“Oracle Kill Lock的使用方法是什么”的内容了,经过本文的学习后,相信大家对Oracle Kill Lock的使用方法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!