Kennen wir das nicht alle? Wir schreiben eine super Webanwendung, nur um dann festzustellen, dass nach einer Weile die Seite immer langsamer wird? Wir optimieren die Performance bis zum geht nicht mehr, testen alle möglichen Funktionen, nur um dann festzustellen, dass das Problem in zu langsamen Antworten vom Datenbank-Server liegt.
Das muss man auch schneller rausfinden können und tatsächlich, mir hat sich wieder eine neue Welt geöffnet.
log-slow-queries = "/VERZEICHNIS/log/mysql.log" log-queries-not-using-indexes = 1
Wobei die Slow Queries als Standard länger als 10 Sekunden dauern, kann aber über die Variable “long_query_time" gesteuert werden.
Nun werden zum einen Anfragen, die sehr lange dauern geloggt, aber viel interessanter fand ich die Option mit den Indexen. Nun kann ich nämlich sehen, welche Anfragen besonders viele Einträge in meiner Datenbank lesen müssen (sog. Full Table Scans), bevor eine Antwort gegeben werden kann. Und wenn man dann feststellt, dass für jedes Bild, was auf der Seite angezeigt wird, die gesamte Tabelle mit 5000 Einträgen eingelesen wird, dann sagt die Bildergallerie schon mal “Gute Nacht”.
Ähnliche Artikel:





