今天晚上在做oracle数据库查询时,又他么的碰到锁表了。我看了好久,才发现IDEA的数据库界面没有点击自动提交按钮。导致锁表。锁表的提示是
locked by transaction:select ....
分析后想起来是锁表了。然后就查询了百度,在CSDN博客中找到如下解决方法:
新建查询,输入:
SELECT s.username,l.OBJECT_ID,l.SESSION_ID,s.SERIAL#,l.ORACLE_USERNAME,l.OS_USER_NAME,
l.PROCESS FROM V$LOCKED_OBJECT l,V$SESSION S WHERE l.SESSION_ID=S.SID;
这时候可以查到SESSION_ID和SERIAL#
关键的一步就是
alter system kill session '200,348';
其中200是SESSION_ID,348是SERIAL#的值。就可以解决了。
select object_name,machine,s.sid,s.serial# from v$locked_object l,dba_objects o ,v$session s where l.object_id=o.object_id and l.session_id=s.sid;
参考来源:http://blog.csdn.net/until_tl/article/details/71774786