Tabellen mit Überhang in einer MySQL-Datenbank ermitteln und optimieren.
Beschreibung
Die Funktion mysqlOptimizeTables() ermittelt in einer Datenbank die Tabellen, die einen Überhang haben. Ein Überhang kann entstehen, wenn viele Daten geändert oder z.B. gelöscht werden. Dieser Überhang ist nicht genutzter Speicher und wird sich stetig bei Änderungen vergrößern. Daher ist es ratsam von Zeit zu Zeit eine Tabelle zu optimieren, um diesen Speicher wieder freizugeben.
Sind alle Tabellen mit Überhang ermittelt, optimiert die Funktion jede der zu optimierenden Tabellen.
Als Rückgabewert liefert die Funktion ein Array mit folgenden Werten für jede optimierte Tabelle.
Table: Der Tabellenname in der Form <Datenbankname>.<Tabellenname>
Op: Die Art der Aufgabe - hier immer optimize
Msg_type: Den Typ der Meldung - status, error, info oder warning
Msg_text: Die zurückgelieferte Meldung
optimized_bytes: Die Anzahl der Bytes mit Überhang
Folgendes ist bei dieser Funktion zu beachten:
Der MySQL-Befehl OPTIMIZE TABLE funktioniert nur bei MyISAM-, BDB- und InnoDB-Tabellen.
Die Tabellen werden während der Laufzeit von OPTIMIZE TABLE gesperrt, daher ist es ratsam diese Funktion zu Zeiten aufzurufen, in der nicht viele Zugriffe auf die Tabelle stattfinden.
Je nach Beanspruchung der Tabelle ist es ausreichend, eine Tabelle im Wochen- oder Monatsintervall zu optimieren.