Session beenden (kill session)
OracleSessions & ProzesseBefehl
-- 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;Was es tut
Beendet die Session mit der angegebenen SID,SERIAL#; ihre offene Transaktion wird zurückgerollt.
Wann einsetzen
Um eine Session zu stoppen, die Sperren hält, eine außer Kontrolle geratene Abfrage ausführt oder Verbindungen leckt.
Vorsicht
Bei einer offenen Transaktion kann das Rollback lange dauern (bei wenig geleisteter Arbeit ist es schnell erledigt). Prüfe zuerst per Abfrage, damit du nicht die falsche SID beendest. Das Rollback großer DML erzeugt I/O-Last.