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

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

相关推荐
占疏4 分钟前
数据库-BRIN 索引
数据库·mysql
u0109272717 分钟前
Python虚拟环境(venv)完全指南:隔离项目依赖
jvm·数据库·python
m0_686041618 分钟前
Python类型提示(Type Hints)详解
jvm·数据库·python
晚风_END8 分钟前
postgresql数据库|pgbouncer连接池压测和直连postgresql数据库压测对比
数据库·postgresql·oracle·性能优化·宽度优先
三水不滴27 分钟前
Redis 持久化机制
数据库·经验分享·redis·笔记·缓存·性能优化
lusasky39 分钟前
Claude Code v2.1.0+ 版本集成LSP
大数据·数据库·人工智能
凯子坚持 c1 小时前
Qt常用控件指南(7)
服务器·数据库·qt
diediedei1 小时前
Python字典与集合:高效数据管理的艺术
jvm·数据库·python
气可鼓不可泄1 小时前
将dmpython 封装在容器镜像里
数据库·python
m0_561359671 小时前
超越Python:下一步该学什么编程语言?
jvm·数据库·python