如何彻底杀死Oracle会话

本文介绍两种方法来中止长时间运行的Oracle PL/SQL:一是通过执行altersystemkillsession命令,二是使用操作系统级命令OraKill。前者可能不会完全释放资源,而后者能立即终止进程,但使用时需谨慎。

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

当你觉得一个长时间运行的一个PL/SQL,有问题时需要立即中止,怎么办:有两种方法:
1.执行
alter system kill session 'sid,serial#'
    这里的sid,serial# 可以在V$Session中找到。执行这个命令,有时候不一定有效。而且看起来杀掉了,
    但是使用的相关资源,也不一定被释放了。那么这时候就要用到下面这种方法了:
2.操作系统级的命令OraKill
   这个命令是Oracle自带的命令,在Oracle_Home的bin目录下。
   执行不带任何参数的OraKill, 会给出下面的提示:
     Usage:  orakill sid thread
     where sid    = the Oracle instance ID to target
        thread = the thread id of the thread to kill
      The thread id should be retrieved from the spid column of a query such as:

        select spid, osuser, s.program from
        v$process p, v$session s where p.addr=s.paddr


     这个命令瞬间会把相关的进程杀掉,所以使用的时候一定要小心。
     相关的文章,请参见http://www.eygle.com/faq/Kill_Session.htm





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值