Häufig beschränkt sich die Überwachung eines Datenbanksystems auf das Availability-Monitoring. Dafür eignet sich Nagios mit geeigneten Plug-ins, aber auch andere Monitoring-Software. Auf diese Weise erfährt man jedoch nur, ob die Datenbank noch läuft, aber nicht, wie es ihr geht. Ihr Befinden ist aber vor allem aus drei Gründen interessant:
Im Umfeld von MySQL gibt es etliche Tools, die es erlauben, den Zustand des Datenbank-Service zu beurteilen. Ihr Benutzer muss jedoch eine gehörige Portion Wissen mitbringen, um sie einsetzen und vor allem die von ihnen gelieferten Daten korrekt interpretieren zu können. Dabei will dieser Beitrag helfen.
Die leistungsfähigsten Werkzeuge für einen Blick auf das System bringt MySQL gleich selber mit dem MySQL-Navigator, »mysqladmin«, »mysql‑console« und dem InnoDB-Monitor mit. Darüber hinaus gibt es mit »mytop« und »innotop« zwei hervorragende Open-Source-Werkzeuge, die Messwerte in Echtzeit präsentieren. Schließlich ist ein regelmäßiger Blick auf die Ressourcen des Betriebssystems gerade bei Datenbanken unabdingbar und von großer Bedeutung für ihre Leistungsfähigkeit.
Wer die angesprochenen Tools einsetzt, merkt schnell, das Problem sind nicht etwa fehlende Werte, sondern es ist im Gegenteil gerade die Informationsflut. Der Anwender steht vor der Frage, welche Parameter, Werte und Counter für die Bewertung des Systemzustands relevant sind. Darauf gibt es zwar keine pauschale Antwort, aber einige Standardindikatoren lassen sich doch ausmachen. Sie geben einen guten Überblick über die aktuelle Auslastung des Datenbanksystems.
Bei der Analyse dieser Werte spielt allerdings auch immer der Zeithorizont eine wichtige Rolle. In einer Momentaufnahme können viele Werte kritischer erscheinen, als sie es langfristig wirklich sind. Ein kurzzeitiger Anstieg der Full-Tables-Scans oder der laufenden Threads etwa, muss kein schlechtes Zeichen sein – entwickelt sich daraus aber ein langfristiger Aufwärtstrend, sollte der Admin ihm Beachtung schenken. Den Trend aber offenbart nur ein kontinuierliches und iteratives Monitoring.
Am einfachsten ist ein längerfristiger Verlauf in einer Grafik zu erkennen. Auch hier kann Nagios in Verbindung mit Netways NagiosGrapher oder PNP nützlich sein und eine Trendanalyse über längere Zeit ermöglichen. Natürlich ist es auch denkbar – wenn auch aufwändiger – die Messwerte zu sammeln und nachträglich zu analysieren, etwa in einer Tabellenkalkulation.