Oracle Live

11/04/2016

PLSQL – Kill sessions

Filed under: PLSQL — mogukiller @ 11:08 pm

Script que mata todas las sessiones presentes en la instancia, excepto los usuarios expecificados por parametro.

DECLARE 
 
 statement     varchar2(4000) := '';
 l_user_saved  varchar2(30)   := '&USER_SAVED';
 
 CURSOR c_sessions_to_kill
   is SELECT s.sid
            ,s.serial#
        FROM  gv$session s 
         JOIN gv$process p ON p.addr = s.paddr 
                      AND p.inst_id = s.inst_id
           WHERE s.username not in ('SYS',trim(upper(l_user_saved)));                       
begin

 for vcursor in c_sessions_to_kill loop
     statement := 'ALTER SYSTEM KILL SESSION '
               || '''' 
               || vcursor.sid
               || ','
               || vcursor.serial# 
               || ''''
               || ' IMMEDIATE';
  
 execute immediate statement;               
 end loop;

end BLOQ_KILL_NO_SYS_SESSIONS;
/ 

Dejar un comentario »

Aún no hay comentarios.

RSS feed for comments on this post. TrackBack URI

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Blog de WordPress.com.

A %d blogueros les gusta esto: