在windows下,如果执行的sql数据量很大,中途kill掉,有时会留下僵死的线程,导致对象被锁定,一般我们的处理方式是使用orakill,参见之前我的blog中的文章。但是最近碰到很多次即使用orakill也不能彻底杀死这个session,现象为在v$process中有记录,但是orakill sid thread的时候会报错说没有。
这时就需要这个工具派上用场了,打开后在数据库实例上点击右键,选择“线程信息…”,找到僵死的线程,点击终止,就可以立即删除这个线程了。
附脚本查询语句
select spid, osuser, s.program from
v$process p, v$session s where p.addr=s.paddr
解决Windows下Oracle僵死线程
本文介绍了一种在Windows环境下处理Oracle数据库中僵死线程的方法。当执行大量SQL时若中途终止,可能会出现僵死线程,导致对象锁定。文中提供了一个工具和查询语句来终止这些僵死线程。

2545

被折叠的 条评论
为什么被折叠?



