MySQL-Monitoring

MySQL-Monitoring

Rund um MySQL gibt es eine Vielzahl von Tools, die tiefe Einblicke in das Innenleben der Datenbank gewähren. Allerdings kommt es darauf an, die Datenflut auch interpretieren zu können. Dieser Beitrag leistet dabei Hilfestellung.

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:

  • Datenverfügbarkeit: Nur wenn die Datenbank störungsfrei arbeitet und nicht überlastet ist, sind die Daten, die sie anbieten soll,auch tatsächlich für den Anwender verfügbar. Ein einfacher Blick in die Prozessliste verrät darüber nichts.
  • Compliance: Ob die Datenbank möglicherweise in Service Level Agreements (SLA)vereinbarte Antwortzeiten tatsächlich einhält, offenbart sich ebenfalls nicht auf den ersten Blick.
  • Ressourcenmanagement: Liegen Ressourcen des Datenbankservers brach? Oder gehen sie umgekehrt gerade zur Neige und es droht ein Einbruch der Performance? Checkt man nur die Verfügbarkeit, bleiben diese Fragen offen.

Die Toolbox

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.

Der Blick für das Wesentliche

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.

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023