MySQL Die Logdatei für langsame Anfragen (log-slow-queries)

Gepostet am Januar 5, 2012

Bei der Optimierung von Systemen ist es oft hilfreich, langsame Datenbankabfragen zu erkennen und zu beseitigen.

Folgende Einstellungen muss man an der mysql.cfg oder bei XAMPP an der mysql.ini (XAMPP/mysql/bin/my.ini) vornehmen:

1
2
3
4
5
im Bereich [mysqld] müssen folgende Zeilen hinzugefügt werden:
log-slow-queries = C:/xampp/mysql/log/slow.log
long_query_time = 1
log-queries-not-using-indexes
log-slow-admin-statements

– der Mindestwert von long_query_time ist 1 und gibt die nötige Dauer der Abfrage an, das diese auch geloggt wird
log-slow-queries gibt den Speicherort der log-Datei an
log-queries-not-using-indexes (Angabe optional) loggt langsame Abfragen, die keine Indizes verwenden (dieser Parameter kann auch weg gelassen werden, wenn nur langsame Abfragen geloggt werden sollen
log-slow-admin-statements (Angabe optional) können Sie festlegen, dass langsame administrative Anweisungen wie OPTIMIZE TABLE, ANALYZE TABLE und ALTER TABLE ebenfalls in das Log für langsame Abfragen geschrieben werden

1
Nach den Änderungen muss der MySQL-Server neu gestartet werden

Das Log für langsame Abfragen kann zum Ermitteln von Abfragen verwendet werden, deren Ausführung sehr lange dauert und die deswegen für Optimierungen prädestiniert sind. Allerdings kann die Überprüfung dieses Logs eine recht schwierige Aufgabe sein (gerade bei mehreren großen Abfragen). Um diese Aufgaben zu vereinfachen, können Sie das Log für langsame Abfragen mit dem Shell-Befehl mysqldumpslow verarbeiten, um Abfragen zusammenzufassen, die im Log erscheinen.

Beispiel Konfiguration unter XAMPP folgt:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# The MySQL server
[mysqld]
port= 3306
socket= "C:/xampp/mysql/mysql.sock"
basedir="C:/xampp/mysql" 
tmpdir="C:/xampp/tmp" 
datadir="C:/xampp/mysql/data"
pid_file="mysql.pid"
skip-external-locking
key_buffer = 16M
max_allowed_packet = 2048M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log_error="mysql_error.log"
#bind-address="127.0.0.1"
 
log-slow-queries = C:/xampp/mysql/log/slow.log
long_query_time = 1
log-slow-admin-statements

Tags: , ,

Leave a Reply

 

Posts of Current Category



Facebook: