工作随记:oracle中偶发遇到存储过程编辑,删除等卡死问题

文章目录


最近有几个客户也询问过:我的存储过程怎么编译、调试有时候就卡死不动了,而且还没办法删除,本次又碰到实际情况,做一个简单查询判断

一、查询session是否占用

通过动态性能表v$db_object_cache我们可以获取到表,索引,簇,PL/SQL过程和包装,并触发。在共享池对象级别的统计信息。

此次要查询的存储过程名称为:CONFIRMFEE

sql 复制代码
select * from v$db_object_cache where name ='CONFIRMFEE';

这里发现LOCKS=2,那也就意味着有2个session在锁定着存储过程。

二、通过对象名称定位对应SID

SQL 复制代码
select * from v$access where object='CONFIRMFEE';

三、通过对应的SID查询session信息

session信息中可以看到机器信息,调用程序有助于大家排查

SQL 复制代码
select * from v$session where sid='2575';

四、kill掉session

SQL 复制代码
select 'alter system kill session '''||SID||','||SERIAL#||''' immediate;' from v$session where sid='1320';

至此,应该可以解决大部分的此类问题。

相关推荐
小蒜学长33 分钟前
医疗报销系统的设计与实现(代码+数据库+LW)
数据库·spring boot·学习·oracle·课程设计
终端行者1 小时前
kubernetes1.28部署mysql5.7主从同步,使用Nfs制作持久卷存储,适用于centos7/9操作系统,
数据库·容器·kubernetes
羊小猪~~1 小时前
MYSQL学习笔记(九):MYSQL表的“增删改查”
数据库·笔记·后端·sql·学习·mysql·考研
我们的五年1 小时前
MySQL 架构
数据库·mysql·开源
橘猫云计算机设计1 小时前
基于SSM的《计算机网络》题库管理系统(源码+lw+部署文档+讲解),源码可白嫖!
java·数据库·spring boot·后端·python·计算机网络·毕设
ok0602 小时前
oracle怎么创建定时任务
数据库·oracle
阿桢呀2 小时前
Redis实战篇《黑马点评》5
数据库·redis·缓存
33三 三like2 小时前
软件测试:1、单元测试
数据库·sqlserver·log4j
坚定信念,勇往无前2 小时前
Spring Boot中整合Flink CDC 数据库变更监听器来实现对MySQL数据库
数据库·spring boot·flink