Teil 6: MySQL 4 - Tunig-Möglichkeiten für Admins

SQL-Optimierung: Server richtig konfigurieren

Serverparameter

Der Server hat mehrere Parameter (Variablen), die Sie ändern können, um seinen Betrieb zu beeinflussen. Die wichtigsten Parameter sind die Größen des Tabellencaches und des Caches, der von den Tabellen-Handlern für Indizierungsoperationen verwendet wird.

Wenn Sie genug Speicher zur Verfügung haben, weisen sie ihn den Cachepuffern des Servers zu, um mehr Daten im Speicher zu halten und die Festplattenaktivitäten zu reduzieren. Dies ist von Vorteil, weil der Zugriff auf Daten im Speicher viel schneller ist als der Zugriff auf die Festplatte.

Der Tabellencache nimmt Informationen zu geöffneten Tabellen auf. Seine Größe wird mithilfe der Servervariablen table_cache gesteuert. Greift der Server auf viele Tabellen zu, dann wird dieser Cache gefüllt, und der Server muss Tabellen, die eine Zeit lang nicht verwendet wurden, schließen, um Platz zum Öffnen neuer Tabellen zu schaffen. Durch Überprüfen des Statusindikators Opened_tables können Sie ermitteln, wie effizient der Tabellencache ist:

SHOW STATUS LIKE ‘Opened_tables’;

Opened_tables gibt an, wie oft eine Tabelle geöffnet werden musste, weil sie zum gewünschten Zeitpunkt nicht geöffnet war (der Wert wird auch als Opens in der Ausgabe des Befehls mysqladmin status angezeigt). Ist die Zahl stabil oder leicht ansteigend, dann haben Sie wahrscheinlich einen geeigneten Wert gewählt. Nimmt der angezeigte Wert hingegen schnell zu, dann bedeutet dies, dass der Cache voll ist und Tabellen geschlossen werden müssen, damit andere Tabellen geöffnet werden können. Wenn Dateideskriptoren vorhanden sind, können Sie durch Erhöhen der Tabellencachegröße die Anzahl der Öffnungsoperationen für Tabellen verringern.