Oracle_Kill_Session_终极篇
GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
https://cnsendnet.taobao.com
来自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=1600
Oracle Kill Session 终极篇
环境:
NLSRTL 10.2.0.2.0 Production
Oracle Database 10g Enterprise Edition 10.2.0.2.0 64bi
PL/SQL 10.2.0.2.0 Production
TNS for IBM/AIX RISC System/6000: 10.2.0.2.0 Productio
问题/解决:
在用Toad 使用sys as dba用户登录,kill oracle session时,发现有一些session并杀不掉于是用命令行进行杀。
用于查找有所有session的语句:
select sid,serial#,username,status from v$session where status!='KILLED' and username is not null;
kill session的语句:
Alter system kill session ‘sid,serial#’;
Kill session后,需要等待一段时间,执行以下语句,看看是否有还有没有杀掉的进程:
select sid,serial#,username,status from v$session where status ='KILLED';
发现过了1个小时,还有以下四个进程并没有被杀掉,于是就需要强行杀掉该进程了。
SID SERIAL# USERNAME STATUS
---------- ---------- ------------------------------ --------
1047 355 SYMBOLS KILLED
1059 1599 SYMBOLS KILLED
1103 1 SYS KILLED
1104 2 SYS KILLED
执行以下语句,此语句是为了获得进程地址:
select * from (select s.username,s.serial#,s.sid,s.status,x.addr,x.ksllapsc,x.ksllapsn,x.ksllaspo,x.ksllrtyp,decode(bitand(x.ksuprflg,2),0,null,1)
from x$ksupr x,v$session s where s.paddr(+)=x.addr and bitand(ksspaflg,1)!=0) a,(select p.addr from v$process p where pid <> 1
minus
select s.paddr from v$session s where s.status='KILLED') b where a.addr = b.addr;
结果如图所示:
可以看到如上图所示,此处username、serial#、sid、status均为空的则是我们需要的已经被Killed的,我们可以通过此处的地址,在v$process中找到spid也就是我们需要杀的进程,下面没行后面跟的数字就是我查到的spid。
select spid from v$process where addr ='070000004F7BDE78'; 2597048
select spid from v$process where addr ='070000004F7B9798'; 2609252
select spid from v$process where addr ='070000004F79C6F8'; 463032
select spid from v$process where addr ='070000004F79CED8'; 352444
select spid from v$process where addr ='070000004F7A0DD8'; 1142874
select spid from v$process where addr ='070000004F7BA758'; 1519700
select spid from v$process where addr ='070000004F7A05F8'; 1261676
这里有一个问题,就是我们上面在被killed的session只有4个,而这里却有7个,于是,我们需要在服务器上面查找相关的进程,如下图所示:
我发现在查找7个进程的时候,有4个后面明显带有f10001003ac24a0之类的地址,也就是f1000开头的,于是就kill掉这4个进程,在察看数据库中果然好了,哈哈。
GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
https://cnsendnet.taobao.com
来自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=1600
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?