Was ist MySQLDumper ?
Dieses Projekt wird nicht länger weiter entwickelt. Auf Github befindet sich das Repository mit dem letzten Stand.
MySQLDumper ist ein Sicherungsprogramm für MySQL-Datenbanken,
geschrieben in PHP und Perl. Damit können Sicherungskopien der Daten
(Forum, Shop, Blog, usw.) erstellt und bei Bedarf auch wieder
hergestellt werden. Besonders bei Web-Space ohne Shell-Zugang bietet
sich MySQLDumper als sinnvolle Alternative an.
Das Projekt ist ein OpenSource Projekt und unterliegt den GNU-Lizenzen.
Das Problem …
PHP-Skripte werden nach einer bestimmten Laufzeit abgebrochen (normalerweise nach 30 Sekunden), und so funktioniert ein Backup mit diversen Tools nur bis zu einer bestimmten Größe.
Braucht das Skript länger als die vom Server zugestandene Ausführungszeit, so wird es einfach abgebrochen! Man erhält damit keine vollständige Sicherungskopie. Die gleiche Problematik besteht beim Wiedereinspielen eines Backups.
Wer einmal ein Dumpfile von Hand in viele kleinere Einzelabschnitte zerlegt hat, um eine Datenbank wieder herzustellen, der hat leidvoll und arbeitsintensiv erfahren, wovon wir reden. Mit MySQLDumper gehört dieser manuelle Aufwand glücklicherweise der Vergangenheit an.
MySQLDumper ist die Lösung …
MySQLDumper umgeht den Timeout-Error mit Hilfe eines kleinen Tricks: Er liest nur eine bestimmte Anzahl von Datensätzen aus der Tabelle aus, merkt sich, wie weit er gekommen ist, und ruft sich anschließend selbst auf. Dadurch erhält das Skript bei jedem Aufruf wieder die volle Ausführungszeit und umgeht so geschickt das Problem des Abbruchs durch den Server. Das gleiche Prinzip benutzt MySQLDumper auch beim Wiederherstellen der Daten.
MySQLDumper kann die Daten beim Sichern sofort packen. Auch das
Wiederherstellungsskript kann direkt aus dieser gepackten Datei lesen,
ohne dass sie auf dem Server entpackt werden muss! Das spart Zeit, Platz
und Nerven. Natürlich kann man die Datei auch ungepackt lassen, aber
spätestens beim Hochladen eines Backups weiß man dies zu schätzen.
Welche
Funktionen bietet MySQLDumper?