Oracle中记录被锁解锁方法
今天,在使用update更新一条记录时,怎么都更新不了,一直处在没反应状态,然后采用编辑行记录时提交就说记录被锁,才知道具体的原因了。
1、查看数据库锁,诊断锁的来源及类型
Select object_id,session_id,locked_mode From v$locked_object;
或者:
Select b.owner,b.object_name,l.session_id,l.locked_mode From v$locked_object l, dba_objects b Where b.object_id=l.object_id;
2、找出数据库的serial#值,用来杀死
Select t2.username,t2.sid,t2.serial#,t2.logon_time From v$locked_object t1,v$session t2 Where t1.session_id=t2.sid Order by t2.logon_time;
3、杀死被锁的session
Alter system Kill session 'sid,serial#';