Wo finde ich das langsame MySQL-Protokoll?


24

Wie der Titel schon sagt, wo kann ich es sehen?

Gibt es Konfigurationsoptionen dafür (wie viele ms würden bestimmen, ob eine Abfrage langsam ist oder nicht)?

Antworten:


22

Sie finden es abhängig von Ihrer Installation im Standardverzeichnis. Auf meinem Red Hat ist es zum Beispiel / var / log / mysql /

Die Abfragezeit ist die Zeit in Sekunden, in der die Aufzeichnung beginnen soll. Dies kann beim Start und zur Laufzeit erfolgen.

log-slow-queries = /var/log/mysql/mysql-slow.log

long_query_time = 1


4
Auf meiner Site habe ich festgestellt, dass jemand log_slow_queries = ON gesetzt hat. Ich habe also eine Datei in meinem Datadir mit dem Namen ON, die das Protokoll enthält. Das war verwirrend ...
Gaius

6
Beachten Sie, dass log-slow-Abfragen ab 5.1.29 veraltet sind. Das danach zu verwendende ist Slow-Query-Log.
Riedsio

1
Beachten Sie außerdem, dass ab MySQL 5.1.21 eine Auflösung von Mikrosekunden beim Protokollieren in eine Datei unterstützt wird.
Riedsio


7

Dies sind die relevanten Optionen (und Einstellungen), die ich im Allgemeinen in allen meinen my.cnfs verwende, um langsame Abfragen zu protokollieren:

log_output=FILE
slow_query_log=1
slow_query_log_file=/var/log/mysql/mysql.slow 
long_query_time=0.001 
log-queries-not-using-indexes=0

Beachten Sie, dass für long_query_time ,

Ab MySQL 5.1.21 ... wird beim Protokollieren in eine Datei eine Auflösung von Mikrosekunden unterstützt.


3

Durchsuchen Sie Ihre mysqld-Konfigurationsdatei (normalerweise /etc/my.cnf)

An deiner Muschel:

grep slow /etc/my.cnf

2

Hier ist auch etwas zu beachten:

Wenn Sie die Option verwenden

log-output=TABLE

Suchen Sie in der Datei /etc/my.cnf nach dem langsamen Protokoll, das eine CSV-Speicher-Engine-basierte Tabelle ist, die sich ausgerechnet im mysql-Schema befindet.

Dies wirkt sich auch auf das allgemeine Protokoll aus, sobald Sie es aktivieren.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.