MySQL ist eine der populärsten, plattformübergreifenden Datenbanken. Sie hat sich in erster Linie als Backend von Web-Anwendungen einen Namen gemacht.
Die Standardwerte der Datenbank-Anwendung können in vielen Fällen unverändert übernommen werden. Bei stärkerer Beanspruchung und größeren Datenmengen sollten sie aber besser angepasst werden. Ansonsten könnten sie die gekoppelten Anwendungen unnötig ausbremsen.
Das Perl-Skript MySQL-Tuner hilft dabei, die MySQL-Konfiguration zu optimieren. Das Tool macht Vorschläge, wie sich die Datenbank besser verwalten und eine ausreichende Verfügbarkeit von Ressourcen sicherstellen lässt. Gleichzeitig sorgt es dafür, dass MySQL nicht zu viele Ressourcen zugewiesen bekommt.
Der MySQL-Tuner lässt sich einfach via wget herunterladen:
$ wget mysqltuner.pl
Das mag zwar merkwürdig erscheinen, aber die Internetseite mysqltuner.pl leitet einen direkt zum Download des Skripts um. Es kann gleich nach dem Herunterladen ausgeführt werden. Bei einem Aufruf gibt es dann folgendes zu sehen:
Zuerst muss sich der Anwender jedoch als root bei der Datenbank anmelden. Anschließend beginnt MySQL-Tuner mit der Analyse des Servers und erteilt Auskunft über die Performance. Auf der Grundlage dieser Ergebnisse gibt MySQL-Tuner dann einige Tipps und Empfehlungen aus.
Im obigen Beispiel ist klar zu sehen, dass MySQL angesichts des verfügbaren physischen RAM und der aktuellen Buffer-Einstellungen viel zu viel Speicherplatz benötigt. Bei einer maximalen Anzahl von 1024 Threads à 272 MByte und einem zugewiesenen RAM von insgesamt 757 MByte darf MySQL demnach 273 GByte RAM bei der maximalen Zahl von Verbindungen belegen – und das bei einem System mit 2 GByte physischem RAM.
Hier sollten also die Einstellungen schleunigst geändert werden. Denn sonst würde bei hoher Belastung der Rest des Systems ausgebremst beziehungsweise MySQL wäre schlichtweg nicht in der Lage, alle Anfragen zu bewältigen. In diesem Fall bietet es sich an, die maximale Thread-Anzahl zu reduzieren und eventuell auch die verschiedenen Buffer-Werte herabzusetzen (sort_buffer_size, read_buffer_size und read_rnd_buffer_size). Im obigen Beispiel wurden die ersten beiden Buffer-Volumen auf 128 MByte und das dritte auf 64 MByte gesetzt.
Mit MySQL-Tuner lassen sich leichter Einstellungen aufspüren, die angepasst werden müssen, um die Performance einer MySQL-Anwendung zu steigern. Das hier dargestellte Beispiel ist zwar ziemlich heftig, zeigt aber deutlich, welche Folgen ein schlecht konfigurierter MySQL-Server nach sich ziehen kann.
Neueste Kommentare
2 Kommentare zu MySQL-Tuner: Mehr Performance mit einfachen Maßnahmen
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.
Geht leider nur unter Linux / BSD und co.
Da es MySQL ja auch für Windows gibt wäre ein Hinweis nett gewesen. (Ok der Mehr zu kasten deutet schon auf Linux hin)
Stormy
einen Pearl-Interpreter für das angesprochene Pearl Skript soll es ja auch für Windows geben.
R.B.