ORA-04021: 等待锁定对象 SBJC.PRO_JC_ENTRANCE 时发生超时

本文介绍了一种解决Oracle数据库中编译存储过程缓慢并出现ORA-04021错误的技术解决方案。通过使用dba_ddl_locks查询找到冲突会话,利用alter system kill session命令释放锁,从而恢复正常编译流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编译同一个存储过程,或者执行此存储过程时非常慢,最后报错:ORA-04021: 等待锁定对象 SBJC.PRO_JC_ENTRANCE 时发生超时。

网上查了一下。一般ORA-04021是因为这个包正在被其他会话调用,编译时申请不到library lock导致的,通过dba_ddl_lock 找到调用这个包的会话kill之后据能够正常编译,按照这个方法问题得到解决。


select * from dba_ddl_locks where name='PRO_JC_ENTRANCE'

150

select sid,serial# from v$session where sid=150;

150    7513

alter system kill session '150, 7513';


问题解决。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值