本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《
阿里云开发者社区用户服务协议
》和
《
阿里云开发者社区知识产权保护指引
》。如果您发现本社区中有涉嫌抄袭的内容,填写
侵权投诉表单
进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
编译的存储过程的时候,程序死住,等待一会出现ora-04021错误解决办法:
1.可能被锁住 查看v$locked
select b.sid,b.serial#,b.machine,b.terminal,b.program,b.process,b.status from v$lock a , v$session b
where a.SID = b.SID
得到死锁session的SID,SERIAL#参看这个是否为你自己用户下的,然后kill掉session
2.可能被挂起 查看v$session_wait
select b.serial#,a.* from v$session_wait a,v$session bwhere a.sid = b.sid
得到等待的session的sid和serial#
3.查看dba_ddl_locks
select session_id sid, owner, name, type,
mode_held held, mode_requested request
from dba_ddl_locks
where name = '&your_package_name'