Veröffentlicht 15. Februar 200520 j Hi, wie kann ich bidde eine Session unter Oracle 'totsicher' killen? Meistens funktioniert's ja mittels "alter system kill session...". Was aber, wenn die Session danach nur 'marked to kill' ist??? Einige Sessions bleiben dann scheinbar für immer in diesem Zustand, bis die Datenbank einmal runter- und wieder raufgefahren wird... :confused: Danke und Gruß der Christian
15. Februar 200520 j Das liegt daran das die Session vorher irgendwas gearbeitet hat, und das sie da die Transaktion nicht comitted wurde das ganze jetzt zurückrollen muss. Das kann Länger dauern als die Ziet die gebraucht wurde um bis dahin zu kommen. Du kannst die Session wegbekommen allerdings übernimmt die Arbeit dann der dbwr, es ist also nur eine Kosmetische Sache. Einzige Möglichkeit: warten bis der Rollback fertig ist. Falls die Session aber nichts tut sondern ein "zombie" ist kann man den Prozess unter Unix mit kill -9 endgültig abschießen. Wir hatte hier schon sessions die zwischen 5 und 36 Stunden für das marked to kill bis zum verschwinden gebraucht haben. Wie oft wir die db denn runtergefahren?
15. Februar 200520 j Autor Danke, jetzt hab ich zumindest ne Erklärung für den Sachverhalt :marine Aber beschleunigen kann man diesen Rollback-Vorgang wohl nicht...? Die Datenbank (Entwicklungssystem) wird eigentlich nur dann runtergefahren, wenn eben solche Session irgendwelche Ressoursen blockieren und dadurch z.B. nicht einmal mehr ein Package-Compile durchlauft :beagolisc Im Produktivsystem soll die DB dann ununterbrochen oben bleiben! Bye Christian
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.