Oracle对象锁查看及杀死指定session

Oracle对象锁查看及杀死指定session

-- 0.给指定用户(这里用system)分配下列系统表的【select】权限(这是前提)。
grant select on v_$process to system;
grant select on v_$locked_object to system;
grant select on v_$lock to system;

-- 1.统计对象锁数量
select count(*) from v$locked_object;

-- 2.查询对象锁记录
select * from v$locked_object;

-- 3.获取更多被锁对象详情,包括session等信息,其中【object_name】字段就是被锁的表等对象的名称
select 
    b.owner,
    b.object_name,
    a.session_id,
    a.locked_mode 
from 
    v$locked_object a,
    dba_objects b 
where 
    b.object_id = a.object_id;

-- 4.以上一步得到的session_id为条件,查询session详情
SELECT sid, serial#, username, osuser FROM v$session where sid = '361';  

-- 5.以上一步得到的session_id、session序列号为条件,杀死session
ALTER SYSTEM KILL SESSION '361, 31417';
posted @   JaxYoun  阅读(137)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示