解除Oracle被锁的表
1.开一个会话session1 SQL>select sid from v$mystat where rownum=1; SID 158 SQL>create table t(x int primary key); table created SQL>insert into t values(1); commit; SQL>update t1 set t=10 where x=1; 2.再开一个会话 SQL>select sid from v$mystat where rowunm=1; SID 157 SQL>update t1 se x=10 where x=1; 这个时候session2被session1锁住 3、执行以下语句查看是哪个进程和序列锁住了表 select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode from v$locked_object lo, dba_objects ao, v$session sess where ao.object_id = lo.object_id and lo.session_id = sess.sid 4、执行下面的语句,将改锁表的进程和序列杀掉了 alter system kill session '1020,38953' --(1020,就是执行第一步语句得到的sid字段值,38953就是serial#字段值) 参考博文:http://www.cnblogs.com/srsee/archive/2013/05/10/infi0510_2.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |