工作随记: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';

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

相关推荐
islandzzzz2 分钟前
从0开始的SQL表DDL学习(基础语法结构、索引/约束关键字)
数据库·sql·学习
qq_381454996 分钟前
数据脱敏全流程解析
java·网络·数据库
qq_3482318510 分钟前
MySQL 与 PostgreSQL对比
数据库·mysql·postgresql
梁bk19 分钟前
苍穹外卖项目总结(一)[MyBatis-Plus,文件上传,Redis]
数据库·redis·mybatis
CNRio19 分钟前
Redis:内存中的数据引擎,架构解析与设计指南
数据库·redis·架构
hans汉斯20 分钟前
【软件工程与应用】基于大数据的应急救援云平台构建应用研究
大数据·数据库·人工智能·物联网·系统架构·云计算·汉斯出版社
流绪染梦24 分钟前
多表联查时处理一对多的信息,将子表字段放入数组
java·数据库
悦数图数据库28 分钟前
国产图数据库:开启数据新“视”界 悦数科技
数据库·人工智能
啊巴矲32 分钟前
小白从零开始勇闯人工智能Linux初级篇(Navicat Premium及MySQL库(安装与环境配置))
数据库·人工智能·mysql
en-route34 分钟前
Redis 作为消息队列的三种使用方式与 Spring Boot 实践
数据库·spring boot·redis