phpbar.de logo

Mailinglisten-Archive

[php] MySQL-Speicherplatz zu Ende

[php] MySQL-Speicherplatz zu Ende

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Die Jul 4 14:07:37 CEST 2006


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