myisamchk unterstützt die folgenden Optionen für Operationen zur Tabellenreparatur:
--backup
, -B
Erstellt ein Backup der Datei .MYD
als
.
file_name
-time
.BAK
--character-sets-dir=
path
Das Verzeichnis, in dem Zeichensätze installiert sind. Siehe auch Abschnitt 5.11.1, „Der für Daten und zum Sortieren benutzte Zeichensatz“.
--correct-checksum
Korrigiert die Prüfsummeninformation für die Tabelle.
--data-file-length=
len
,
-D len
Gibt die maximale Länge der Datendatei an (zur Neuerstellung der Datendatei, wenn diese „voll“ ist).
--extend-check
, -e
Führt eine Reparatur durch, die alle Datensätze aus der Datendatei wiederherzustellen versucht, bei denen dies möglich ist. Normalerweise werden hierdurch auch viele nicht mehr erforderliche Datensätze gefunden. Verwenden Sie diese Option nur, wenn Sie vollkommen verzweifelt sind.
--force
, -f
Überschreibt alte Zwischendateien (Dateien mit Namen wie
)
anstatt abzubrechen.
tbl_name
.TMD
--keys-used=
,
val
-k
val
Bei myisamchk ist die Option ein Bitwert, der angibt, welche Indizes aktualisiert werden müssen. Jedes Binärbit des Optionswerts entspricht einem Tabellenindex, wobei der erste Index Bit 0 ist. Der Optionswert 0 deaktiviert Änderungen an allen Indizes, was zur Beschleunigung von Einfügeoperationen genutzt werden kann. Deaktivierte Indizes können mit myisamchk -r reaktiviert werden.
--parallel-recover
, -p
Verwendet dieselbe Methode wie -r
und
-n
, erstellt aber alle Schlüssel
parallel unter Verwendung verschiedener Threads.
Der Code hat bislang nur Betaqualität.
Verwendung auf eigene Gefahr!
--quick
, -q
Beschleunigt die Reparatur, da die Datendatei nicht geändert wird. Sie können diese Option zweimal angeben, um die Änderung der Originaldatendatei durch myisamchk im Falle von Schlüsseldubletten zu erzwingen.
--recover
, -r
Führt eine Reparatur aus, die praktisch jedes Problem
behebt (ausgenommen sind eindeutige Schlüssel, die nicht
eindeutig sind – ein Fehler, der bei
MyISAM
-Tabellen extrem selten
vorkommt). Wenn Sie eine Tabelle wiederherstellen wollen,
sollten Sie diese Option zuerst ausprobieren.
--safe-recover
sollten Sie nur verwenden,
wenn myisamchk meldet, dass die Tabelle
mit --recover
nicht wiederhergestellt
werden kann. (In dem unwahrscheinlichen Fall, dass
--recover
fehlschlägt, bleibt die
Datendatei intakt.)
Wenn Sie sehr viel Speicher haben, sollten Sie den Wert
von sort_buffer_size
erhöhen.
--safe-recover
, -o
Führt eine Reparatur unter Verwendung einer alten
Wiederherstellungsmethode durch, die alle Datensätze der
Reihe nach ausliest und alle Indexbäume entsprechend den
gefundenen Datensätzen aktualisiert. Dies ist um eine
Größenordnung langsamer als --recover
,
kann aber ein paar sehr unwahrscheinliche Fälle beheben,
die --recover
nicht korrigiert. Diese
Methode verwendet überdies wesentlich weniger
Festplattenspeicher als --recover
.
Normalerweise sollten Sie zuerst eine Reparatur mit
--recover
durchführen und
--safe-recover
nur dann verwenden, wenn
--recover
fehlschlägt.
Wenn Sie sehr viel Speicher haben, sollten Sie den Wert
von key_buffer_size
erhöhen.
--set-collation=
name
Gibt die für die Tabellen zu verwendende Sortierung an. Dabei wird der Zeichensatzname implizit durch den ersten Teil des Sortierungsnamens festgelegt.
--sort-recover
, -n
Erzwingt die Verwendung der Sortierung zur Auflösung von Schlüsseln durch myisamchk auch für den Fall, dass die Temporärdateien sehr groß werden würden.
--tmpdir=
path
, -t
path
Pfad zu dem Verzeichnis, in dem die Temporärdateien
gespeichert werden. Wenn diese Einstellung nicht
vorgenommen wird, verwendet myisamchk
den Wert der Umgebungsvariablen TMPDIR
.
tmpdir
kann eine Liste der
Verzeichnispfade enthalten, in denen zyklisch abwechselnd
die Temporärdateien erstellt werden. Die Verzeichnispfade
sind unter Unix mit Doppelpunkten
(‘:
’) und unter Windows,
NetWare und OS/2 mit Semikola
(‘;
’) voneinander zu
trennen.
--unpack
, -u
Entpackt eine Tabelle, die mit myisampack gepackt wurde.
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.