Was ist der beste Weg, MySQL auf Live -Produktionsserver zu diagnostizieren und zu profilieren?

StackOverflow https://stackoverflow.com/questions/618997

Frage

Welche Tools/Methoden empfehlen Sie, MySQL auf Live -Produktionsserver zu diagnostizieren und zu profilieren?

Mein Ziel, alternative Möglichkeiten zur Skalierung des Systems zu testen und ihren Einfluss auf das Lesen/Schreiben von Timing, Speicher, CPU -Last, Disk -Zugriff usw. zu sehen und Engpässe zu finden.

War es hilfreich?

Lösung

Zunächst sollten Sie eine Art Überwachung mit EG einrichten:

Andere können hilfreiche Werkzeuge: meine Spitze Innotop MTOP Maatkit

Zusätzlich sollten Sie die Protokollierung aktivieren langsame Querien in deinem my.cnf.

Bevor Sie beginnen, Parameter zu stimmen/zu ändern, sollten Sie einen Testplan erstellen und die vor/Nachher -Ergebnisse vergleichen, um zu sehen, ob Ihre Änderungen sinnvoll sind oder nicht.

Andere Tipps

Daran habe ich ziemlich viel gearbeitet.

  • Monyog - MySQL -Überwachungsdienst. Wir verwenden dies in der Produktion. Es ist nicht kostenlos, hat aber viele Funktionen, einschließlich Warnungen und historischen Daten.

  • MySQL Enterprise Monitor - erhältlich mit MySQL Enterprise (dh nicht billig)

  • Roll deinen eigenen!

Über die Rolle Ihrer eigenen Option:

Wir haben tatsächlich eine wirklich coole Überwachungsanwendung entwickelt, die verwendet RRD -Tool (verwendet von der gemeinsamen MRTG) und einer Kombination aus MySQL -Statistiken und Systemstatistiken wie Iostat. Dies war nicht nur eine großartige Übung, sondern gab uns eine Menge Flexibilität, um genau das zu überwachen, was wir von einer einzelnen Schnittstelle wollen.

Hier ist ein Kurze Beschreibung von einigen Ansätzen zum Aufbau eigener Statistiken.

Eine unserer großen Motivationen für das Rollen unserer eigenen, obwohl wir auch Monyog verwenden, war die Verfolgung von Datenträgern. Die Festplatten -E/A kann ein großer Engpass sein, und die Standard -MySQL -Überwachungssysteme haben keine E/A -Überwachung. Wir gebrauchen Iostat Welches ist Teil der System Paket.

Wir haben eine Schnittstelle, die Grafiken von MySQL -Statistiken neben der Festplatten -E/A -Statistiken anzeigt, sodass wir wirklich ein Gesamtbild davon machen können, wie sich die MySQL -Last auf die Scheibe E/A auswirkt.

Zuvor hatten wir wirklich keine Ahnung, warum unsere Produktionsanwendungen festgefahren wurden. Wir stellten fest, dass die Disk -I/O ein großes Problem war und dass MySQL bei der Ausführung komplexer Abfragen viele temporäre Tabellen auf der Festplatte erstellte. Wir konnten unsere Fragen optimieren und die Festplattenleistung dramatisch verbessern.

Jetprofiler mit Sicherheit

Auch zur Liste hinzufügen: RHQ 4 (Open Source) - http://rhq-project.org/

Abstimmung http://tinyurl.com/vote-gif zur Liste hinzufügen:

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top