当前位置:Gxlcms > 数据库问题 > Oracle某条资料被锁如何解锁 (ScriptRunner,v$locked_object,SID和SERIAL#)

Oracle某条资料被锁如何解锁 (ScriptRunner,v$locked_object,SID和SERIAL#)

时间:2021-07-01 10:21:17 帮助过:30人阅读

count(*) from v$locked_object; select * from v$locked_object;

(2)查看哪个表被锁

  1. <span style="color: #0000ff;">select</span> b.owner,b.<span style="color: #ff00ff;">object_name</span>,a.session_id,a.locked_mode <span style="color: #0000ff;">from</span> v$locked_object a,dba_objects b <span style="color: #0000ff;">where</span> b.<span style="color: #ff00ff;">object_id</span> <span style="color: #808080;">=</span> a.<span style="color: #ff00ff;">object_id</span>;

(3)查看是哪个session引起的

  1. <span style="color: #0000ff;">select</span> b.username,b.sid,b.serial#,logon_time <span style="color: #0000ff;">from</span> v$locked_object a,v$session b <span style="color: #0000ff;">where</span> a.session_id <span style="color: #808080;">=</span> b.sid <span style="color: #0000ff;">order</span> <span style="color: #0000ff;">by</span> b.logon_time;

(4)杀掉对应进程

执行命令:

  1. <span style="color: #0000ff;">alter</span> system <span style="color: #0000ff;">kill</span> session<span style="color: #ff0000;">‘</span><span style="color: #ff0000;">1025,41</span><span style="color: #ff0000;">‘</span>;

其中1025为sid,41为serial#.

 

如果查询不到v$locked_object,是因为没有权限。

 技术图片

以sys用户登录,执行如下授权语句:

  1. <span style="color: #0000ff;">grant</span> <span style="color: #0000ff;">select</span> <span style="color: #0000ff;">on</span> SYS.V_$LOCKED_OBJECT <span style="color: #0000ff;">TO</span> dev;

 

此外,还需要注意的一个地方是,kill session语句中需要写上SID和SERIAL#

Alter system kill session ‘SID,SERIAL#‘

这是因为SID会被重用,而SERIAL#是递增的,不会重复。SID和SERIAL#组合才可以准确指定session

 技术图片

 

Oracle某条资料被锁如何解锁 (ScriptRunner,v$locked_object,SID和SERIAL#)

标签:select   upd   ptr   serial   退出   方法   今天   evel   lock   

人气教程排行