Das statische (Festlängen-) Format ist für
MyISAM
-Tabellen voreingestellt. Es wird
verwendet, wenn die Tabelle keine Spalten mit variabler Länge
(VARCHAR
-, VARBINARY
-,
BLOB
- oder TEXT
-Spalten)
enthält. Jede Zeile wird dann mit einer festgelegten Anzahl
von Bytes gespeichert.
Von den drei Speicherformaten, die MyISAM
unterstützt, ist das statische Format das einfachste und
sicherste (für Schäden am wenigsten anfällige). Außerdem
bietet es wegen der Leichtigkeit, mit der die Zeilen der
Datendatei auf der Festplatte gefunden werden, auch den
schnellsten Festplattenzugriff. Um eine Zeile nach der
Index-Zeilennummer nachzuschlagen, multiplizieren Sie die
Nummer der Zeile mit ihrer Länge, um ihre Position zu
ermitteln. Darüber hinaus ist es beim Durchsuchen einer
Tabelle sehr einfach, mit jedem Festplattenzugriff eine
konstante Anzahl Zeilen zu lesen.
Die Sicherheit erweist sich, wenn Ihr Computer abstürzt,
während der MySQL-Server eine MyISAM
-Datei
mit festgelegtem Format schreibt. In einem solchen Fall kann
myisamchk ganz leicht feststellen, wo die
Zeilen beginnen und enden. Normalerweise ist es dadurch in der
Lage, alle Zeilen außer der einen, die nur teilweise
geschrieben wurde, zurückzugewinnen. Beachten Sie, dass
MyISAM
-Tabellenindizes immer anhand der
Datenzeilen rekonstruiert werden können.
Kennzeichen von statischen Tabellen:
CHAR
-Spalten werden mit Leerzeichen bis
zur Spaltenbreite aufgefüllt.
BINARY
-Spalten werden mit
0x00
-Bytes bis zur Spaltenbreite
aufgefüllt.
Sie sind sehr schnell.
Sie lassen sich leicht zwischenspeichern.
Sie sind nach einem Absturz einfach zu rekonstruieren, da sich die Datensätze an festen Positionen befinden.
Eine Reorganisation der Tabellen ist nicht erforderlich,
es sei denn, Sie löschen sehr viele Zeilen und möchten
dem Betriebssystem den frei gewordenen Speicherplatz
zurückgeben. Hierzu verwenden Sie OPTIMIZE
TABLE
oder myisamchk -r.
Sie belegen normalerweise mehr Speicher als dynamische Tabellen.
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.