Encerrar uma sessão (kill session)
OracleSessões e processosComando
-- 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;O que faz
Encerra a sessão com o SID,SERIAL# informado; sua transação aberta sofre rollback.
Quando usar
Para interromper uma sessão que mantém locks, executa uma consulta descontrolada ou vaza conexões.
Atenção
Se houver uma transação aberta, o rollback pode demorar (termina rápido se pouco trabalho foi feito). Verifique antes com uma consulta para não encerrar o SID errado. O rollback de DML grande gera carga de I/O.