Meine jos_session Tabelle hat über 100.000 Einträge innerhalb 24 Std

  • Hallo liebe Forum,

    vorab, ich hoffe, ich mache hier alles richtig!?

    Domain: http://www.skischule-alpin.de
    Version: Joomla 5.2.1
    Provider: Ionos
    Php-Version 8.2 (bei Ionos so eingestellt)
    Erweiterung: linguise (Übersetzungstool)

    Mein Problem:
    - jos_session Tabelle hat binnen 24 Stunden mehr als 100.000 Einträge
    - Datenbank-Größe von 7,9 MB auf über 80 MB binnen eines Tages
    - Einträge werden nicht gelöscht

    von Beginn an:
    Ich habe die Seite offline in xampp erstellt. Danach auf den Ionos-Server kopiert und Datenbanke angelegt, etc ... alles funktioniert fehlerfrei.
    Dann 'linguise' (linguise.com') installiert, läuft!

    Dann aber festgestellt, dass die Datenbankgröße sich binnen 24 Std verzehnfacht hat (8 auf 80MB)

    Fehlersuche ergab, dass in der deutschen Original-Version der Seite alles bestens läuft. 1 Eintrag in der jos_session Tabelle.
    Sobald ich aber auf die englische Seite wechsle, also den Übersetzer 'linguise' aktiviere, habe ich binnen einer Minute mehrer 100 Einträge in der jos_session... und das hört dann auch erstmal nicht auf!

    (Sitzungslänge in Joomla/Konfiguration/system/Sitzungslänge ist auf 10 Minuten gestellt.)

    Bin mit 'linguise' bereits in Kontakt, die sind wirklich bemüht, fiunden aber die Ursache nicht und können sich das auch nicht erklären!
    -> btw! Habe 'linguise' so auch auf einem Strato-Serfer laufen und habe dort keinerlei Probleme! Also das Tool funktioniert ptinzipiell.

    Da Ionos mir aber immer wieder mit irgndwelchen Sonderheiten aufgefallen ist, bin ich da mal auf die Suche gegangen!

    Frage:

    Wenn ich aus meinem lokalen xammp
    die Datenbank exportiere, erscheint
    folgendes im Header der DB:

    -- phpMyAdmin SQL Dump
    -- version 5.2.1
    -- https://www.phpmyadmin.net/
    --
    -- Host: 127.0.0.1
    -- Erstellungszeit: 11. Nov 2024 um 10:57
    -- Server-Version: 10.4.32-MariaDB
    -- PHP-Version: 8.2.12

    SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
    START TRANSACTION;
    SET time_zone = "+00:00";
    ...

    Exportiere ich die Datenbank
    von Ionos aus, dann dieses:

    -- phpMyAdmin SQL Dump
    -- version 4.9.11
    -- https://www.phpmyadmin.net/
    --
    -- Host: db5016645781.hosting-data.io
    -- Erstellungszeit: 15. Nov 2024 um 11:18
    -- Server-Version: 10.11.7-MariaDB-log
    -- PHP-Version: 7.4.33

    SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
    SET AUTOCOMMIT = 0;
    START TRANSACTION;
    SET time_zone = "+00:00";

    Auf meine telefonischeN BitteN, sich dieser Sache mal anzuschauen hörte ich nur, passt alles so ... und dann auch mal - schreib Mail an Support.
    Dies getan, aber welch Überraschung: keine Antwort!

    Nun meine Frage:
    - kennt jemand das Problem, oder hatte ein ähnliches und kann mir helfen?
    - (wie) kann ich das abstellen?
    - können die unterschiedlichen Einträge in der *.sql-Datei die Ursache für die massenhaften Einträge in der jos_session Tabelle sein? (weil Datenbank bei Ionos trotz Einstellung auf 8.2 im Hintergrund immer noch auf 7.4 läuft?)
    - (wie) kann ich die jos_session Tabelle regelmäßig löschen lassen?

    Hoffe, ich konnte mein Problem ausführlich schildern und hoffe, jemand von euch grinst und schickt mir irgendeine Zeile, die irgendo hineinkopiere und danach auch grinse! '.-)

    Vielen Dank schon mal imVoraus für eure Aufmerksamkeit und Mühen!

    Marcus

  • Hallo in die Runde!

    So, nun bin ich mal die Vorschläge, die dem Betroffenen auf
    #__session table is not emptying - Joomla! Forum - community, help and support
    vorgeschlagen wurden, durchgegangen.

    Wie bei Ihm halfen die ersten Vorschläge bei mir auch nciht.

    Habe dann auch mal unter Joomla-Konfiguration den Siotzungsspeicher von Datenbank auf Dateisystem umgestellt. Trotzdm wuchs die jos_session-Tabelle weiter an.

    Bei ihm hat wohl geholgen, den PHP-Parameter "session.gc_probability" auf 1 zu setzen.
    Da ich bei Ionos keinen Zugriff auf die php.ini habe, konnte ich das nicht testen.

    Muss auch dazu sagen, dass ich den Tipp: die Anweisung "truncate table #__sessions" verwenden nicht testen konnte, weil ich kine Ahnung hatte was das bedeutet und wo das geschen muss (= vermutlich Datenbank!? '.-)

    Nun werde ich versuchen einen Cronjob zu erstellen, der mir die jos_session-Tabelle regelmäßig löschen wird.

    .... außer ihr habt noch ein paar Vorschläge für mich!? '.-)

    Gruß
    Marcus

  • Weißt Du, dass es in J5 eine vorgefertigte "Geplante Aufgabe" für diesen Zweck gibt (erreichbar über System -Geplante Aufgaben)?

    Vielleicht solltest Du Dich mit dieser "Geplanten Aufgabe" (und den entsprechenden Optionen) mal beschäftigen.

    Freundliche Grüße aus Wächtersbach, Rolf Dautrich

  • Bei ihm hat wohl geholgen, den PHP-Parameter "session.gc_probability" auf 1 zu setzen.
    Da ich bei Ionos keinen Zugriff auf die php.ini habe, konnte ich das nicht testen.

    Du kannst bei Ionos ja eine eigene php.ini erstellen und die Anweisung einfügen.

    Ob sie allerdings ausgeführt wird, weiß ich nicht, da ich nicht bei Ionos bin.

    Anpassen der PHP-Einstellungen mittels php.ini-Datei - IONOS Hilfe
    Hier erfahren Sie, wie Sie die PHP-Einstellungen für Ihren Webspace ändern.
    www.ionos.de
  • Nun werde ich versuchen einen Cronjob zu erstellen, der mir die jos_session-Tabelle regelmäßig löschen wird.

    .... außer ihr habt noch ein paar Vorschläge für mich!? '.-)

    Gruß
    Marcus

    Hallo Marcus,

    in einer Joomla! 3er Version gab es auch mal Probleme mit den Sessions, da habe ich folgendes Plugin veröffentlicht: https://kubik-rubik.de/de/downloads/e…killer/joomla-3

    Damit werden abgelaufene Sessions automatisch über die eingestellte Wahrscheinlichkeit oder einem Zeitintervall (täglich, jeden zweiten Tag, wöchentlich, usw.) geleert.

    Das Plugin ist kostenlos und sollte auch noch sauber in Joomla! 4 und 5 laufen (du kannst den Spendencode-Aufruf in den Einstellungen ignorieren).

    Viel Erfolg!

  • Weißt Du, dass es in J5 eine vorgefertigte "Geplante Aufgabe" für diesen Zweck gibt (erreichbar über System -Geplante Aufgaben)?

    Vielleicht solltest Du Dich mit dieser "Geplanten Aufgabe" (und den entsprechenden Optionen) mal beschäftigen.

    Hallo Rolf,
    herzlichen Dank für diesen Hinweis!!! Nein, das habe ich nciht gewusst!!!!
    Ich schaue mir das jetzt gleich mal genauer an!!!

    vielen Dank für diesen Tip!

    Gruß
    Marcus

  • Problem gelöst!!

    Abschließend an diejenigen, die ein ähnliches Problem beschäftigt:

    beide Möglichkleiten funktionieren:
    -> sowohl die von Rolf Dautrich und den "geplanten Aufgaben" / Session GC unter Joomla 5.2.1
    als auch
    -> das Plugin von Kubik-Rubik und seinem tollen plg_easysessionkiller_v3.2.0.0 - Plugin!

    Allen, insbesondere natürlich den 2 genannten,
    herzlichen Dank für eure unterstützung!!!

    Viele Grüße
    Marcus