
Kapitel 5: MySQL-Datenbankadministration 241
5.5.2 ANALYZE TABLE-Syntax
ANALYZE TABLE tabelle[,tabelle...]
Analysiert und speichert die Schl¨usselverteilung der Tabelle. W¨ahrend der Analyse ist die
Tabelle mit einer Lesesperre gesperrt. Das funktioniert auf MyISAM und BDB-Tabellen.
Das ist ¨aquivalent zum Laufenlassen von myisamchk -a auf die Tabelle.
MySQL benutzt die gespeicherte Schl¨usselverteilung, um zu entscheiden, in welcher Rei-
henfolge Tabellen verkn¨upft werden sollen, wenn man eine Verkn¨upfung (Join) auf irgend
etwas anderes als eine Konstante macht.
Der Befehl gibt eine Tabelle mit folgenden Spalten zur¨uck:
Spalte Wert
Table Tabellenname.
Op Immer “analyze”.
Msg type status, error, info oder warning.
Msg text Die Meldung.
Sie k¨onnen die gespeicherte Schl¨usselverteilung mit dem SHOW INDEX-Befehl ¨uberpr¨ufen.
Siehe Abschnitt 5.5.5.1 [SHOW DATABASE INFO], Seite 243.
Wenn die Tabelle seit dem letzten ANALYZE TABLE-Befehl nicht ge¨andert wurde, wird sie
nicht noch einmal analysiert.
5.5.3 FLUSH-Syntax
FLUSH flush_option [,flush_option]
Wenn Sie einige der internen Caches, die MySQL benutzt, l¨oschen wollen, benutzen Sie
den FLUSH-Befehl. Um FLUSH ausf¨uhren zu k¨onnen, m¨ussen Sie die RELOAD-Berechtigung
haben.
flush_option kann eine der folgenden sein:
HOSTS Leert die Host-Cache-Tabellen. Sie sollten die Host-Tabellen flushen, wenn
einige Ihrer Hosts die IP-Nummer ¨andern oder wenn Sie die Fehlermel-
dung Host ... is blocked erhalten. Wenn mehr als max_connect_errors
Fehler in einer Zeile f¨ur einen gegebenen Host w¨ahrend der Verbindung zum
MySQL-Server vorkommen, nimmt MySQL an, dass etwas nicht stimmt
und blockiert den Host von weiteren Verbindungsversuchen. Wenn die
Host-Tabellen geflusht werden, gestattet das dem Host, einen erneuten
Verbindungsversuch zu machen. Siehe Abschnitt A.2.4 [Blocked host],
Seite 626. Sie k¨onnen mysqld mit -O max_connection_errors=999999999
starten, um diese Fehlermeldung zu vermeiden.
LOGS Schließt alle Log-Dateien und ¨offnet sie danach wieder. Wenn Sie die
Update-Log-Datei oder eine bin¨are Log-Datei ohne Erweiterung angegeben
haben, wird die Erweiterungsnummer der Log-Datei um eins relativ zur
vorherigen Datei hoch gez¨ahlt. Wenn Sie eine Erweiterung im Dateinamen
benutzt haben, schließt MySQL die Update-Log-Datei und ¨offnet sie danach
wieder. Siehe Abschnitt 5.9.3 [Update log], Seite 302. Das ist dasselbe, wie
dem mysqld-Server das SIGHUP-Signal senden.
Comentarios a estos manuales