Terminar una sesión (kill session)
OracleSesiones y procesosComando
-- First find the session to kill:
SELECT sid, serial#, username, status, machine, program
FROM v$session
WHERE username = 'CUSTOMER_APP' AND status = 'ACTIVE';
-- Kill it (starts rollback immediately):
ALTER SYSTEM KILL SESSION '145,12345' IMMEDIATE;
-- If it hangs, the OS process can be terminated:
-- ALTER SYSTEM DISCONNECT SESSION '145,12345' IMMEDIATE;Qué hace
Termina la sesión con el SID,SERIAL# indicado; se hace rollback de su transacción abierta.
Cuándo usarlo
Para detener una sesión que retiene bloqueos, ejecuta una consulta desbocada o tiene fugas de conexiones.
Precaución
Si hay una transacción abierta, el rollback puede tardar mucho (termina rápido si se hizo poco trabajo). Verifique primero con una consulta para no terminar el SID equivocado. El rollback de un DML grande genera carga de E/S.