- Typischer Nutzwert
- Hoch
- Aufwand
- Hoch
- Risiko
- Mittel
- Hosting / Umgebung
- VPS/dedizierter Server oder Managed Hosting mit Datenbankdiagnose
- Voraussetzungen
- Datenbankzugriff, ausreichender Speicher und Datenschutzprüfung
- Aussagekraft
- hoch
- Zuletzt geprüft
- 17. August 2026
Cookbook: Ziel und Ergebnis
Du priorisierst langsame SQL-Muster nach Gesamtwirkung und verbesserst erst danach Code, Index oder Datenmodell. EXPLAIN erklärt einen Plan, beweist allein aber keine sichere Änderung.
Rezept: Schritt für Schritt
- Kurzes Messfenster unter repräsentativer Last wählen; Slow Query Log mit kontrolliertem
long_query_timeaktivieren. - Log nach Fingerprint gruppieren: Häufigkeit × mittlere Laufzeit ist oft wichtiger als die langsamste Einzelabfrage.
- Top-Muster mit URL, Hook/Plugin und Call Stack verbinden. Danach
EXPLAINauf einer sicheren Umgebung ausführen. - Index- oder Query-Änderung auf produktionsnahen Daten testen; Schreibkosten und Speicher berücksichtigen.
Rechenweg oder Entscheidungsregel
Gesamtkosten je Muster = Aufrufe × mittlere Laufzeit\nDB-Zeitanteil (%) = Gesamtkosten Muster / gesamte gemessene DB-Zeit × 100
Praxisbeispiel
Query A läuft 2 s, aber zweimal täglich: 4 s/Tag. Query B läuft 80 ms und 100.000-mal: 8.000 s/Tag. Query B hat Vorrang. Zeigt EXPLAIN einen Full Table Scan über Millionen Zeilen, kann ein passender zusammengesetzter Index helfen – aber nur passend zur WHERE-/ORDER-BY-Reihenfolge.
Prüfen, ob es funktioniert
- P95/P99 der betroffenen Anfrage sowie Gesamtkosten des Fingerprints sinken.
- Keine stärkere Schreiblast, längeren Locks oder größere Replikationsverzögerung.
- Slowlog nach Messung wieder auf Betriebsniveau bzw. aus stellen; sensible Werte schützen.
Rollback
Neue Indizes oder Query-Änderungen über den vorgesehenen Migrationsweg zurücknehmen. Vor Indexentfernung prüfen, ob andere Abfragen ihn verwenden. Slowlog-Konfiguration auf Ausgangswert setzen und kontrolliert neu laden.
Das Problem
Hohe Datenbankzeit kann von einer langsamen Einzelabfrage, tausenden kleinen Abfragen, fehlenden Indizes oder Sperren kommen. Die Größe einer Tabelle allein erklärt das nicht.
Vorgehen
- Auf Staging oder zeitlich begrenzt das Slow Query Log mit passender Schwelle aktivieren.
- Query-Text, Laufzeit, geprüfte Zeilen und Häufigkeit gruppieren.
- Mit
EXPLAINden geschätzten Plan untersuchen. ANALYZE/EXPLAIN ANALYZEnur kontrolliert verwenden: es führt die Abfrage tatsächlich aus.- Ursache im Plugin, Theme oder Datenmodell beheben; Indexänderungen gegen Schreiblast und Speicher abwägen.
Sicherheit
Logs können personenbezogene oder vertrauliche Parameter enthalten und stark wachsen. Zugriff, Rotation und Löschung festlegen. Auf Shared Hosting den Anbieter um eine zeitlich begrenzte Auswertung bitten.
Erfolgskontrolle
Vergleiche Laufzeit, geprüfte Zeilen, CPU/I/O und Gesamtantwortzeit unter realer Last. Ein Index, der Lesen beschleunigt, kann Schreiben und Speicherverbrauch erhöhen.
Quellen und Prüfstand
Inhalt fachlich geprüft am 17. August 2026. Konkrete Werte sind Ausgangspunkte, keine Universaldosierung.