oracle 查询并清除锁lock

oracle在做表数据更新时, 会产生相应的锁. 

一般在使用第三方数据库工具在进行更新时, 由于各种原因操作中断, 会造成表的锁. 这时候一般需要手工清除


1. 查询oracle锁(常用)

SELECT SESS.SID,  SESS.SERIAL#,  LO.ORACLE_USERNAME,  LO.OS_USER_NAME,  AO.OBJECT_NAME, LO.LOCKED_MODE, 
'ALTER SYSTEM KILL SESSION ''' || SESS.SID || ','||SESS.SERIAL#||'''' FREESQL
FROM V$LOCKED_OBJECT LO,  DBA_OBJECTS AO,  V$SESSION SESS 
WHERE AO.OBJECT_ID = LO.OBJECT_ID AND LO.SESSION_ID = SESS.SID

2. 解锁

执行上述sql的查询结果中, 最后一列, 例:  

alter system kill session '140,33100'


你可能感兴趣的:(DataBase)