DBAtlas · Atlas für Datenbankbetrieb

Session beenden (kill session)

OracleSessions & Prozesse

Befehl

-- 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.

In DBAtlas öffnen →

Verwandte Einträge