by Nobbie » 19. September 2009 12:39
Wenn als Datenbank-Engine "MyIsam" aktiviert ist (das ist meistens der Fall, eine Alternativ wäre "InnoDB"), dann entspricht jede MySQL Datenbank einem kompletten Ordner aus dem data-Verzeichnis (siehe /etc/my.ini) von MySQL. Bei Xampp ist das /opt/lampp/var/mysql, bei anderen MySQL Installationen oft /var/lib/mysql. Und die Dateien innerhalb der jeweiligen Ordner sind die Tabellen, die in dieser Datenbank gespeichert sind, wobei jede Tabelle in drei Dateien aufgegliedert ist (tabelle.frm, tabelle.MYI, tabelle.MYD). Das eine ist die Tabellenbeschreibung (*.frm), das nächste sind die Datensätze (*.MYD) und die dritte Datei sind die Schlüsseldaten (Primary Key, Index usw.).
Wenn man Backups nur für das aktuell laufende System machen will, kann man statt mysqldump auch einfach den o.g. data-Ordner sichern. Bei Releasewechseln usw. ist allerdings das mysqldump-Format portabler, da es als Textformat die Tabellen mit CREATE, INSERT usw. anlegt (und alle Datensätze anlegt). Ansonsten reicht es auch, einfach die gesicherten Ordner in das data-Verzeichnis zurückzuspielen. Das funktioniert sogar teilweise über Releasewechsel hinaus und sogar bei Betriebssystemwechsel (sprich: die Datenbanken unter Linux sind binär kompatible zu den Datenbanken unter Windows).