Mailinglisten-Archive |
Hallo Michael, postneutral. Michael Felstau schrieb: > ich arbeite mit dem CMS WebEdition. > Da ist es mir nun passiert, dass ein Rebuild aller Seiten und Dokumente > inklusive der Haupttabelle und aller temporärer Tabellen mir meine Daten > vernichtet hat, da die Datenbank Ihren Speicherplatz aufgebraucht hatte > und ich es nicht mitbekommen hatte. > > Dazu schrieb mir ein Support-Mitarbeiter: > <zitat> > wenn der Speicherplatz für die Datenbank aufgebraucht ist, kann Ihnen > webEdition leider keine Warnmeldung geben, da der verfügbare Speicherplatz > durch einen PHP Script nicht fesgtestellt werden kann. > > ... die Beschränkung des > Speicherplatzes finden auf Dateiebene statt - nicht auf Datenbankebene. > Dadurch entsteht der Fehler also nicht bei der Ausführung einer > Datenbankaktion, sondern in dem Moment wo der MySQL Server die Daten auf > Festplatte schreibt. Das SQL Kommando wird also i.d.R. fehlerfrei > durchlaufen > und auch ok zurück liefern - nur in dem Moment wo der MySQL Server > versucht > die Daten auf die Festplatte zu schreiben, kann er dies nicht > vollständig tun, > da das Dateisystem ihm ja das Schreiben weiterer Daten verbietet. > </zitat> > > Nun meine Frage, gibt es denn da wirklich keine Rückmeldungen, die man > mit PHP auswerten kann? > Was meint Ihr als Fachleute dazu? hast Du denn einen dedizierten Server, vielleicht sogar Root-Server, den Du ganz alleine nutzt? Dann hast Du relativ gute Möglichkeiten, das herauszufinden. Die Aussage des Support-Mitarbeiters ist etwas irreführend. Je nach Serverkonfiguration hätte Dein PHP-Skript schon die Möglichkeit, herauszufinden, ob auf der Festplatte noch genug Speicherplatz vorhanden ist. Das wäre natürlich unabhängig von der Datenbankabfrage. Jetzt kenne ich Deinen Server und die entstehenden Datenmengen nicht, so daß ich nicht weiß, ob bei Dir eine Festplattenpartition während eines Rebuilds voll laufen kann. Wenn das so ist, müßtest Du halt immer an kritischen Stellen den noch verfügbaren Festplattenplatz auf den betreffenden Partitionen prüfen. Ansonsten würde ein Cronjob reichen, der in sinnvollen Abständen ein Shellskript anstößt, welches die Belegung der Partitionen prüft und ab einer bestimmten Auslastung eine Benachrichtigung an Dich schickt. Viele Grüße Lutz
php::bar PHP Wiki - Listenarchive