ORA-44504: Resource Locked by Implicit Lock
Cause: The resource is locked by an implicit lock
Action: Implicit locks are normally caused by NFS locks. Refer to XDB Protocol guide for removing/obtaining information about implicit locks.
ORA-44504: Resource Locked by Implicit Lock错误消息体现是,Oracle 数据库试图访问一个特定的资源,但是那个资源已被另外一个进程或会话所锁定,因此而无法访问。
ORA-44504错误是由因对对象使用显式锁及隐式锁导致无法引用资源,而导致的错误。此时,用完该资源的会话还未释放锁,而其他会话就尝试访问该资源而产生的错误。
1、查询数据库当前连接数:
SELECT count(*) FROM v$session;
2、使用V$SESSION视图查询具体问题会话信息:
SELECT username,sid,serial#,lockwait,status FROM v$session WHERE username=’&username’
3、确认问题会话,增加关于问题会话的等待事件信息:
SELECT sid,event, p1raw,p2raw,p3raw FROM v$session_wait WHERE sid = &sid
4、可以使用ALTER SYSTEM KILL SESSION语句强制终止会话:
ALTER SYSTEM KILL SESSION ‘sid,serial#’ IMMEDIATE
5、事务已提交的,账号已令牌登录的,只能重新登录来释放掉会话,不能使用”Alter system kill session”。
6、在OPEN状态的事务,使用”Alter system kill session”来杀进程,不会影响到事务的提交或回滚,因为被杀死的会话已经可以提交且没有其它因素影响到提交或回滚的现象。