Slow query log
Zur Navigation springen
Zur Suche springen
slow query log
In diesem Artikel wird beschrieben wir wir auf einem unserer Server eines Kunden die Funktion " slow query log" aktivieren.
- 1. Config schreiben
Da in unserer Datenbankserverconfig standardmäßig folgender include_dir eingetragen ist: "!includedir /etc/my.cnf.d" erstellen wir unsere neue slow-query-log config im DIR /etc/my.cnf.d/
cd /etc/my.cnf.d/mcedit slowlog.cnf
- und fügen folgenden Inhalt (Hier werden Abfragen länger als 2 Sekunden geloggt) ein, speichern nicht vergessen (F10 und Ja)
- -------
- [mysqld]
- slow_query_log=ON
- log-slow-verbosity=query_plan,explain
- slow-query_log_file=/var/log/mysql-slow.log
- long_query_time=2.0
- -------
- 2. Logdatei anlegen und dem mysql die Rechte zuweisen
touch /var/log/mysql-slow.logchown mysql:mysql /var/log/mysql-slow.log- 3. Dienst rebooten
- danach muss der laufende Datenbankdienst rebooted werden.
service mariadb restart
- oder
service mysqld restart
- 4. Log prüfen
mysqldumpslow -a /var/log/mysql-slow.log- Kann auch in eine Datei ausgegeben werden via ">" hinten dran, also z.B.
mysqldumpslow -a /var/log/mysql-slow.log > /var/www/vhosts/xy.hostkraft.de/auswertung_slow.txt - 5. Daten zum Auswerten an den Kunden weiterleiten
- Im Nachgang kann noch ein Cronjob angelegt werden der das log regelmäßig in das Verzeichnis des Kunden ausgiebt, natürlich sollte eine passende Datei im /logs/ Verzeichnis den Kunden existieren damit dieser die auch auslesen und verwerten kann.