查询当前正在执行的SQL语句并KILL

一、查询当前正在执行的SQL(sid为session ID,即会话标识)

select a.username, a.sid,b.SQL_TEXT, b.SQL_FULLTEXT  from v$session a, v$sqlarea b where a.sql_address = b.address;

 

二、查看正在执行的SQL

select sid,serial# from v$session where sid='上面查出来的sid';

 

三、终止该SQL

alter system kill session 'sid,serial#';

如果如此还没有终止,则需通过系统级别的命令杀死改SQL

SQL> select b.username,b.SPID from v$session a,v$process b where a.PADDR=b.ADDR and a.sid=1511;
 
USERNAME        SPID
--------------- ------------
oracle          6066

其中v$process视图中username的含义为该进程所属的OS user
                           SPID的含义为该进程的操作系统进程号

然后通过系统级别命令 kill -9 6066终止即可

posted @ 2018-08-11 14:47  MrZhou1  阅读(5826)  评论(0)    收藏  举报