存储过程执行卡死

时间:2025-02-07 16:16:28

原因:

没杀死,有之前的相关存储过程session在执行

杀死,但是相关进程没有杀死

解决:

1.根据存储过程名称(大写)查询死锁的会话id
select sid,serial# 
  from v$session 
 where sid = (select session_id from dba_ddl_locks where name='P_DR_RPT_CYHZJCFY');

2.杀死session

alter system  kill session "sid,serial#'

3.查询是否存储已经kill掉的会话存在进程在跑
select from v$session a, v$process b where = and   = 'KILLED'

4.用管理员杀死服务器上的进程,可以用sqlplus,也可以window下直接关闭电脑进程

--存在登陆数据库
sqlplus / as sysdba
--查询spid 进程
!ps -ef | grep 18110
 --杀死进程
!kill -9 18110
5.重新编译