Oracle数据库解決因为for update未提交断掉导致锁表的问题

时间:2021-08-04 08:16:27

    当执行例如:select * from table1 for update语句,因为网络等问题导致未提交前断掉,下一次执行相同语句时资源正忙。

解决方案:第一步:--查询锁表
                                    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;

                    第二步: --查询导致锁表的session  
                                    select b.username,b.sid,b.serial#,logon_time
                                    from v$locked_object a,v$session b
                                    where a.session_id = b.sid order by b.logon_time;

                     第三步:--杀session

                                  在Command执行杀进程语句:

                                  例:alter system kill session'470,23474';--470:sid;23474:serial#