Hallo, auf einem V-Server habe ich 3 Contenido 4.8.15 Installationen. Letzte Woche bekam ich die Meldung von einem meiner Kunden, dass er sich nicht mehr einloggen kann. Nachdem ich mich auch nicht mehr einloggen konnte begann die Fehlersuche. Die Änderung des Passworts direkt in der Datenbank ist nicht möglich bzw.auch das neue Passwort wird vom Contenido nicht akzeptiert.
Heute habe ich festgestellt, dass bei allen 3 Installationen MySQL meldet:Table './XXX/con_phplib_active_sessions' is marked as crashed and last (automatic?) repair failed
Hat schon jemand dieses Problem gehabt/gelöst?
Login Backend; SQL Fehler
-
- Beiträge: 21
- Registriert: Fr 14. Apr 2006, 13:50
- Wohnort: Norderstedt
- Kontaktdaten:
Re: Login Backend; SQL Fehler
Hat wohl nichts mit Contenido zu tun.
Wenn sogar die Reparatur der gecrashten Tabelle fehl schlug, ist vielleicht sogar die Festplatte kaputt.
Kann es auch sein, dass der Speicher oder die Platte voll ist?
Manchmal schmiert einem eine Log-Datei den Plattenspeicher voll oder irgendwelche Prozesse den RAM und dann arbeitet MySQL nicht mehr richtig bis gar nicht.
Wenn sogar die Reparatur der gecrashten Tabelle fehl schlug, ist vielleicht sogar die Festplatte kaputt.
Kann es auch sein, dass der Speicher oder die Platte voll ist?
Manchmal schmiert einem eine Log-Datei den Plattenspeicher voll oder irgendwelche Prozesse den RAM und dann arbeitet MySQL nicht mehr richtig bis gar nicht.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.
-
- Beiträge: 21
- Registriert: Fr 14. Apr 2006, 13:50
- Wohnort: Norderstedt
- Kontaktdaten:
Re: Login Backend; SQL Fehler
Die Platte war kürzlich voll durch fehlgeschlagende Backups welche im Temp Ordner "zwischengelagert" wurden.
Re: Login Backend; SQL Fehler
Ohje... das kann sich fatal für MySQL Datenbank auswirken, weil dann irgendwas plötzlich nicht mehr zuende geschrieben wird, weil zu voll.
Aber die active_sessions Tabelle speichert meines Wissens nur die aktiven Sessions, von den Leuten die sich gerade eingeloggt oder die Seite besucht haben.
Contenido versucht wahrscheinlich lediglich nachzuprüfen, ob die in dem Session_Cookie enthaltene Session_ID mit einer ID in dieser Tabelle übereinstimmt.
Findet sie da nichts, wird sicher ein neuer Eintrag generiert.
Also wenn es kein Session Cookie gäbe und keinen Eintrag, würde Contenido ganz normal ein Session-Cookie anlegen und einen Eintrag in diese Tabelle machen.
Meine Idee wäre (ohne Gewähr), diese Tabelle zu leeren (mit "TRUNCATE table" http://dev.mysql.com/doc/refman/5.1/de/truncate.html) und vielleicht noch das Session_cookie im Browser zu löschen (z.B. für Firefox: Cookies Manager+).
Dann einfach einloggen und es sollte gehen.
Ist die Tabelle so kaputt, dass sie nicht mehr geleert werden kann, dann würde ich sie mir nachbauen.
Entweder geht noch ein Export der Struktur als Text und dann diesen SQL-Code einfach nach Löschen der Tabelle wieder in z.B. phpmyadmin ausführen.
Oder aber der Export schlägt fehl und dann z.B. manuell abschreiben was für Struktur-Einstellungen die Tabelle hat und diese nachbauen.
Ansonsten kann ich dir sicher die Struktur von einer meiner Tabellen geben, geht vielleicht schneller.
Mit jungfräulicher Tabelle dann sollte alles wieder funktionieren.
Aber die active_sessions Tabelle speichert meines Wissens nur die aktiven Sessions, von den Leuten die sich gerade eingeloggt oder die Seite besucht haben.
Contenido versucht wahrscheinlich lediglich nachzuprüfen, ob die in dem Session_Cookie enthaltene Session_ID mit einer ID in dieser Tabelle übereinstimmt.
Findet sie da nichts, wird sicher ein neuer Eintrag generiert.
Also wenn es kein Session Cookie gäbe und keinen Eintrag, würde Contenido ganz normal ein Session-Cookie anlegen und einen Eintrag in diese Tabelle machen.
Meine Idee wäre (ohne Gewähr), diese Tabelle zu leeren (mit "TRUNCATE table" http://dev.mysql.com/doc/refman/5.1/de/truncate.html) und vielleicht noch das Session_cookie im Browser zu löschen (z.B. für Firefox: Cookies Manager+).
Dann einfach einloggen und es sollte gehen.
Ist die Tabelle so kaputt, dass sie nicht mehr geleert werden kann, dann würde ich sie mir nachbauen.
Entweder geht noch ein Export der Struktur als Text und dann diesen SQL-Code einfach nach Löschen der Tabelle wieder in z.B. phpmyadmin ausführen.
Oder aber der Export schlägt fehl und dann z.B. manuell abschreiben was für Struktur-Einstellungen die Tabelle hat und diese nachbauen.
Ansonsten kann ich dir sicher die Struktur von einer meiner Tabellen geben, geht vielleicht schneller.
Mit jungfräulicher Tabelle dann sollte alles wieder funktionieren.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.
-
- Beiträge: 4255
- Registriert: Do 30. Jun 2005, 22:56
- Wohnort: Eltmann, Unterfranken, Bayern
- Kontaktdaten:
Re: Login Backend; SQL Fehler
Servus,
die Tabelle 'con_phplib_active_sessions' kann man getrost erneuern indem man die defekte löscht (wenn möglich) und mit einer leeren Version aus einer Demoinstallation ersetzt.
Grundsätzlich erst mal ein manuelles DB-Backup mit dem aktuellen Stand machen, evtl. auch schrittweise bei weiteren defekten Tabellen. Hierzu empfehle ich immer den MySQLDumper, der kann auch einzelne Tabellen. Damit soviel wie möglich an Daten retten. Erst dann anfangen zu reparieren.
Auch der MySQL-Server hat auf der Kommandozeile ein paar Hilfen um defekte Datenbanken zu reparieren. Evtl. mal beim Provider nachfragen falls es kein root-Server ist.
Gruß aus Franken
Ortwin
die Tabelle 'con_phplib_active_sessions' kann man getrost erneuern indem man die defekte löscht (wenn möglich) und mit einer leeren Version aus einer Demoinstallation ersetzt.
Grundsätzlich erst mal ein manuelles DB-Backup mit dem aktuellen Stand machen, evtl. auch schrittweise bei weiteren defekten Tabellen. Hierzu empfehle ich immer den MySQLDumper, der kann auch einzelne Tabellen. Damit soviel wie möglich an Daten retten. Erst dann anfangen zu reparieren.
Auch der MySQL-Server hat auf der Kommandozeile ein paar Hilfen um defekte Datenbanken zu reparieren. Evtl. mal beim Provider nachfragen falls es kein root-Server ist.
Ein Benutzer-Quota einrichten, je nach Provider, dieses vermeidet ein Beschreiben der Platte bis zum bitteren Ende.demonheart hat geschrieben:Die Platte war kürzlich voll durch fehlgeschlagende Backups welche im Temp Ordner "zwischengelagert" wurden.
Gruß aus Franken
Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
-
- Beiträge: 21
- Registriert: Fr 14. Apr 2006, 13:50
- Wohnort: Norderstedt
- Kontaktdaten:
Re: Login Backend; SQL Fehler
Danke für eure Hilfe! Habe die Tabelle anhand einer Contenido-Installation auf einem anderen Server neu gebaut. Jetzt funktioniert wieder alles.
@oldperl ich bin mein eigener Provider und mit 7 Servern lässt man so einiges schleifen...
Leider ist das mit den Backups passiert als ich im Urlaub war und ich konnte nicht rechtzeitig eingreifen. War mir auf jeden Fall eine Lehre!
@oldperl ich bin mein eigener Provider und mit 7 Servern lässt man so einiges schleifen...
Leider ist das mit den Backups passiert als ich im Urlaub war und ich konnte nicht rechtzeitig eingreifen. War mir auf jeden Fall eine Lehre!
-
- Beiträge: 4255
- Registriert: Do 30. Jun 2005, 22:56
- Wohnort: Eltmann, Unterfranken, Bayern
- Kontaktdaten:
Re: Login Backend; SQL Fehler
Lass mal, so etwas ist glaub ich schon jedem Server-Admin mal passiert. Auch Logs schlagen da gern mal "über die Stränge". Hatte letztens beim neuen Kunden ein Contenido-Log mit über 1 GB mit der Frage 'warum ist Contenido so langsam?'. Der Grund war da dann schnell gefunden und behoben.
Ich richte auf meinen Servern nach Möglichkeit ein User-Quota ein mit Benachrichtigung bei Überschreitung. Das geht sowohl mit Boardmitteln als auch z.B. in PLESK.
Aber schön zu hören wenn wieder Alles läuft.
Gruß aus Franken
Ortwin
Ich richte auf meinen Servern nach Möglichkeit ein User-Quota ein mit Benachrichtigung bei Überschreitung. Das geht sowohl mit Boardmitteln als auch z.B. in PLESK.
Aber schön zu hören wenn wieder Alles läuft.
Gruß aus Franken
Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog