PL/SQL修改Oracle存储过程编译就卡死

问题描述:

这里我用的是Plsql dev客户端,然后修改存储过程编译就卡死,我一直以为是客户端的问题,其实并不然,是因为sessionid什么玩意的被占用了。只需要执行几行命令就可以了。原因的话就是可能有人在执行存储过程,所以你这边修改就会卡死。

问题解决:

可能这些命令有点陌生,这个不重要,只要按着来执行即可。

第一步:获取session_jd

select * FROM dba_ddl_locks where name =upper('存储过程名称');

PL/SQL修改Oracle存储过程编译就卡死_第1张图片

第二步:根据session_id获取serial

select t.sid, t.serial# from v$session t where t.sid = 填写上面查出来的session_id;

PL/SQL修改Oracle存储过程编译就卡死_第2张图片

第三步:根据得到sid和serial# kill

alter system kill session 'sid,serial#'; 

在这里插入图片描述

你可能感兴趣的:(Oracle,数据库)