解决ORA-04021:timeout occurred while waiting to lock object

ORCLE9I,编译某存储过程
ORA-04021
timeout occurred while waiting to lock object stringstringstringstringstring
Cause: While waiting to lock a library object, a timeout is occurred.
Action: Retry the operation later.

 

查找是否有用户类型的锁,即

TM                DML排队

TX                事务处理排队

UL                 用户提供

select * from v$lock where type in ('TM','TX','UL')

结果果然查到有一个sid17,类型为TX的锁,可以断定就是这个锁导致上面的错误

 

再查相应的sidserial#

select * from v$session where sid=17

 

杀掉它

alter system kill session '17,36383'

ORA-00031: session marked for kill ,说明已经是被kill一次过的了,sessionstatuskilled

再查操作系统对应的SPID
select spid from v$process p,v$session s where s.paddr=p.addr and sid=17

查到是17297

$ kill -9 17297

重新编译,成功了

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14075938/viewspace-509700/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/14075938/viewspace-509700/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值