oralce解锁表

2018-10-15  本文已影响0人  蓝海寻鲸

在我们工作中可能会遇到表被锁住的情况,一般用于for update的时候忘记提交事务导致

这个时候要想修改或者删除数据必须要解除被锁的的表才可以。 

解决方法就是通过结束掉锁表的用户。

首先查看被锁的表和session_id

执行这条sql

select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id ;

                                                可以看到我们SIBOWENR表被锁住了

        接下来--查看被锁表的sid对应的SERID

    SELECT sid, serial#, username, osuser FROM v$session;

拿到SID‘181’的SERAL后我们直接结束掉这个进程就可以了

--结束进程 sid,SERID

alter system kill session'181,2051';

这样就把这个被锁的用户进程终止掉了,表也被解锁了。

上一篇下一篇

猜你喜欢

热点阅读