在實際操作中,常常會遇到鎖表的情況,一般都是有不正當的操作或者程序中的bug造成的,當程序卡在那裏的時候就有可能是鎖表的情況
查看鎖表的sql是:
select SESSION_ID ,o.* from v$locked_object l join dba_objects o on (l.OBJECT_ID=o.object_id)
如果你知道是某個表被鎖了 可以直接上面的那句中添加
where o.object_name='USERS';
從上面的sql中得到所有鎖表的sid 然後執行下面這句:
select * from v$session where sid=2
從得到的結果中
serial字段(這裏是 7064)
然後執行:
alter system kill session '2 ,7064'; (2是sid,7064是serial#字段的值。)