日期:2014-05-16  浏览次数:20376 次

【转载】记录被锁解锁方法
今天,在使用update更新一条记录时,怎么都更新不了,一直处在没反应状态,然后采用编辑行记录时提交就说记录被锁,才知道具体的原因了。

  最后通过以下办法总算把记录更新了

  一.查看数据库锁,诊断锁的来源及类型


1 Select object_id,session_id,locked_mode From v$locked_object;


或者:


1 Select b.owner,b.object_name,l.session_id,l.locked_mode 2  From v$locked_object l, dba_objects b 3  Where b.object_id=l.object_id



  二.找出数据库的serial#值,用来杀死


1 Select t2.username,t2.sid,t2.serial#,t2.logon_time 2  From v$locked_object t1,v$session t2 3  Where t1.session_id=t2.sid Order by t2.logon_time;



  三.杀死被锁的session


1 Alter system Kill session 'sid,serial#'



还可以采用重新启动数据库方法。

大家有没有其它好的方法,欢迎提出,共同交流学习~~~