Tuning

MySQL Performance Tuning

Ein interessantes Themen der Webserver Performance Optimierung dürfte wohl das Tuning des MySQL Servers sein.
Man findet ja unzählige Anleitungen und Beschreibungen wie man den MySQL Server richtig einstellt und einen Performanceverbesserung erzielt.
Ich möchte hier einen kleinen Überblick über die Schrauben geben an den man drehen sollte.

max_connections

Wieviele Connections sind generell erlaubt

table_cache

Der Table-Cache reserviert Speicher für die häufiger gebrauchten Tabellen.

query_cache_size

In dem Speicherbereich werden die SQL-Statements mit einer Ergebnissliste gespeichert um bei einem neuen Zugriff die Daten sofort parat zu haben. Bei Updates/Inserts/Deletes wird der gespeicherte Query gelöscht.

key_buffer_size

Der Speicher, der für die referenziellen Keys reserviert wird. Dieser Wert gilt pro Connection.

sort_buffer_size

Der Speicher, der für die Sortierung reserviert wird. Dieser Wert gilt pro Connection.

read_buffer_size

Der Speicher, der für das Lesen von Festplatte reserviert wird. Dieser Wert gilt pro Connection.

Optimierungshilfen und Analyse

Es gibt inzwischen sinnvolle Tools.

Zunächst sollte das Packages installiert werden:

# aptitude install mysqltuner

Danach wird der MySQL-Tuner gestartet, wobei eventuell MySQL Login Daten eingegeben werden müssen.

# mysqltuner

Mehr Informationen über das Skript selbst finden Ihr hier: http://mysqltuner.com/