quarta-feira, 27 de novembro de 2013

SQL Matar ou Suspender um Processo no Oracle



Para saber os SPID ativos no banco de dados:

SELECT A.SID
, A.SERIAL#
, A.USERNAME
, A.SERVER
, B.SPID
, A.OSUSER
, A.MACHINE
, A.PROGRAM
, A.LOGON_TIME FROM V$SESSION A
, V$PROCESS B WHERE A.PADDR=B.ADDR
             AND A.SID in (SELECT A.SID FROM V$SESSION A
                           , V$PROCESS B WHERE A.STATUS='ACTIVE' AND A.USERNAME IS NOT NULL AND A.PADDR=B.ADDR);

A solução seria matar este processo.
SQL> ALTER SYSTEM KILL SESSION ‘[Coloque aqui o SID], [Coloque aqui o SERIAL#]‘ IMMEDIATE;

Depois, use o SPID do processo que quer suspender neste comando:
SQL> oradebug setospid 6785
SQL> oradebug suspend

Depois, para reinicia-lo:
SQL> oradebug resume

Nenhum comentário:

Postar um comentário