我们有一个打印队列进程,通过dbms_lock.allocate_unique获取用户锁。它执行工作,然后释放锁。这个过程运行得很好。
今天,我们有一个进程分配了一个锁,如来自dbms_lock_allocated的输出所示:
NAME LOCKID EXPIRATION
printer_lock 1073741825 11/30/2013 9:35:46 AM
不管是什么会话,它都没有释放锁。有没有办法找到分配此锁的会话,以便结束他们的会话并释放锁?
编辑:
查询DBA_LOCKS不会显示任何具有'PL/SQL‘锁类型的会话。
谢谢!
发布于 2013-11-20 17:53:11
您可以从DBA_LOCKS
获得此信息。
select *
from DBA_LOCKS
where LOCK_TYPE = 'PL/SQL User Lock';
DBA_LOCKS
有SESSION_ID
和锁id。
https://dba.stackexchange.com/questions/53644
复制相似问题