Bereinigung alter Session-Einträge

Ab der FlexNow-Version 2.04.06.006 ist es möglich alte Sessions automatisch bereinigen zu lassen. Hierfür müssen entsprechende Parameter in der context.xml des Servers hinzugefügt werden.

Parametereinstellungen

Sobald die Parameter für Uhrzeit und Alter der Sessions in der context.xml angegeben wurden, wird nach einem Neustart des Servers das automatische Löschen aktiviert. Es sind keine weiteren Einstellungen nötig.

Parameter: Uhrzeit

FN2RBAC.AUTOMATISCHES_LOESCHEN_VON_SESSIONS_UHRZEIT

Angabe der Uhrzeit an der das tägliche Löschen gestartet wird. Dieser Parameter muss vorhanden sein um die Funktion zu aktivieren.

Mögliche Wert: Ganzzahl von 0 bis 23 (Falls eine andere Zahl angegeben wird wird 0 verwendet)

<Parameter
description="Uhrzeit des automatischen Löschens von alten Sessions. Angabe der vollen Stunde."
name="FN2RBAC.AUTOMATISCHES_LOESCHEN_VON_SESSIONS_UHRZEIT" value="0" />''

Parameter: Alter

FN2RBAC.AUTOMATISCHES_LOESCHEN_VON_SESSIONS_MIN_ALTER_TAGE

Angabe des Mindestalters für Sessions welche gelöscht werden können. Dieser Parameter muss vorhanden sein um die Funktion zu aktivieren.

Möglicher Wert: Ganzzahl größer oder gleich 7 (7 ist der kleinste zulässige Wert. Falls ein niedrigerer Wert angegeben wird, wird automatisch 7 verwendet.)

<Parameter
description="Mindest-Alter für automatisch gelöschte Sessions."
name="FN2RBAC.AUTOMATISCHES_LOESCHEN_VON_SESSIONS_MIN_ALTER_TAGE" value="7" />

FN2RBAC.AUTOMATISCHES_LOESCHEN_VON_SESSIONS_MAX_ANZAHL

Parameter: Anzahl zu löschender Sessions

Angabe der max. Anzahl von Sessions die pro täglichem Aufruf gelöscht werden sollen. Dieser Parameter ist optional. Falls kein Wert angegeben wird, wird der Standard-Wert 100 verwendet.

Möglicher Wert: Positive Ganzzahl größer als 0 (Falls kein gültiger Wert angegeben wird, wird der Standard-Wert 100 verwendet.)

<Parameter
description="Maximale Anzahl für automatisches Löschen von alten Sessions."
name="FN2RBAC.AUTOMATISCHES_LOESCHEN_VON_SESSIONS_MAX_ANZAHL" value="100" />

Bereinigung via SQL

Bei einer zu Großen Anzahl von Datensätzen in der Tabelle „Session_“ der MetaDatenbank kann es zu sehr langen Laufzeiten kommen. Daher empfehlen wird vorab die Tabellen via SQL zu löschen. Anbei finden Sie entsprechende SQL-Skripte um jeweils die 100 ältesten Sessions zu löschen. Mehrfaches ausführen der Skripte ist für größere Datenmengen nötig.

SELECT * FROM audit_ WHERE audit_.sessionid IN (SELECT sessionid FROM session_ WHERE sessionid > 0 AND sessionid <= (SELECT MIN(sessionid)+100 FROM session_ where sessionid > 0));
SELECT * FROM se_ro_keyatt WHERE se_ro_keyatt.sessionid IN (SELECT sessionid FROM session_ WHERE sessionid > 0 AND sessionid <= (SELECT MIN(sessionid)+100 FROM session_ where sessionid > 0));
SELECT * FROM sessionrolle WHERE sessionrolle.sessionid IN (SELECT sessionid FROM session_ WHERE sessionid > 0 AND sessionid <= (SELECT MIN(sessionid)+100 FROM session_ where sessionid > 0));
SELECT * FROM session_ WHERE sessionid > 0 AND sessionid <= (SELECT sessionid FROM session_ WHERE sessionid > 0 AND sessionid <= (SELECT MIN(sessionid)+100 FROM session_ where sessionid > 0));