oracle kill session

本文介绍了使用SQL命令查看和管理进程的方法,包括查询特定进程、杀死进程以及处理无法通过SQL直接杀死的进程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

-- 1) 查看需要KILL的进程
SELECT 'ALTER SYSTEM KILL SESSION ' || '''' || SID || ',' || SERIAL# || '''' ||
' IMMEDIATE;'
FROM V$SESSION
WHERE USERNAME = 'DEV_MDS';

-- 2) 记住SPID //
SELECT A.SID, A.SERIAL#, B.SPID, A.STATUS, A.PROGRAM
FROM V$SESSION A, V$PROCESS B
WHERE A.PADDR = B.ADDR
AND A.SID IN (4, 83, 165, 404)
ORDER BY A.SID;

--- 3) KILL 进程
ALTER SYSTEM KILL SESSION '4,19955' IMMEDIATE;
ALTER SYSTEM KILL SESSION '83,33095' IMMEDIATE;
ALTER SYSTEM KILL SESSION '165,30253' IMMEDIATE;
ALTER SYSTEM KILL SESSION '404,51628' IMMEDIATE;

-- 4) 看看是否还存在
SELECT * FROM V$SESSION WHERE USERNAME = 'DEV_MDS';

-- 5) 一般KILL如上进程,若不行则需要操作系统级别KILL进程
-- 5.1) 登陆操作系统 依次 kill -9 第2)步得到的SPID进程
-- 5.2) 若上述步骤还没成功,则将下面查询到得SPID进程KILL掉。
SELECT SPID, PROGRAM
FROM V$PROCESS
WHERE PROGRAM != 'PSEUDO'
AND ADDR NOT IN (SELECT PADDR FROM V$SESSION)
AND ADDR NOT IN (SELECT PADDR FROM V$BGPROCESS);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值