Heim  >  Artikel  >  Datenbank  >  Beispiele für die Konfiguration und Verwendung langsamer Abfrageprotokolle in MySQL

Beispiele für die Konfiguration und Verwendung langsamer Abfrageprotokolle in MySQL

黄舟
黄舟Original
2017-09-18 10:23:121420Durchsuche

Das MySQL-Protokoll für langsame Abfragen liefert Abfrageinformationen, die den angegebenen Zeitschwellenwert überschreiten, und stellt eine wichtige Referenz für die Leistungsoptimierung dar.
Das Protokoll für langsame MySQL-Abfragen ist aktiviert und Die Konfiguration ist sehr einfach. Sie können die aufgezeichnete Datei (oder Tabelle) angeben und den überschrittenen Zeitschwellenwert aufzeichnen, um SQL zu verlangsamen Die Rolle dieser beiden ist nicht nur so), die MySQL-Konfiguration gibt den Menschen immer ein sehr erfrischendes Gefühl.

1. Öffnen des Protokolls für langsame Abfragen

Unter normalen Umständen müssen Sie nur die Konfiguration „slow_query_log = 1“ zur Konfigurationsdatei hinzufügen, d Wenn keine Angabe erfolgt, wird automatisch eine Datei mit dem Hostnamen + „slow“ .log generiert.

 

 2. Standardmäßig beträgt der Zeitschwellenwert für die Aufzeichnung langsamer Abfragen 10 Sekunden

 

Standardmäßig ist slow_query_log = In Fall 1: Wenn Sie MySQL starten, können Sie langsame Abfragen aktivieren und automatisch eine Standarddatei mit dem Hostnamen ++'slow'.log generieren, um langsame Abfragen aufzuzeichnen, deren Ausführung länger als 10 Sekunden dauert.

Sie können auch explizit den Namen der Protokolldatei für langsame Abfragen (sie wird automatisch erstellt, wenn sie nicht vorhanden ist) und den Zeitschwellenwert für die Aufzeichnung langsamer Abfragen (nicht standardmäßig 10 Sekunden) angeben.

 

Beachten Sie, dass bei der Angabe von long_query_time in der Konfigurationsdatei keine Zeiteinheit erforderlich ist, sondern nur ein Wert, z. B. 1 für 1s. Wenn die Zeiteinheit angegeben ist, Der Dienst kann nicht gestartet werden.

 

Das Folgende ist ein Beispiel für langsames SQL, das in der Protokolldatei aufgezeichnet wird

 3. Zeichnen Sie das langsame Abfrageprotokoll auf zur Tabelle

Konfiguration: Sie müssen eine log_output-Konfiguration hinzufügen, um langsame Abfragen in der Tabelle aufzuzeichnen

Unter der MySQL-Bibliothek gibt es eine Standard-Slow_log-Tabelle. Sie können slow_query_log_file = slow_log direkt festlegen, um das langsame Abfrageprotokoll in der Tabelle aufzuzeichnen.

 

Der aufgezeichnete langsame SQL-Text ist wie folgt: Es kann festgestellt werden, dass sql_text eine binäre Information ist, nicht der ursprüngliche SQL-Text

Sie können es mit der CONVERT-Funktion konvertieren.

 

Über den Unterschied zwischen langsamen Abfragen, die in Protokolldateien und Tabellen aufgezeichnet werden:

1. Langsame Abfragen, die in Protokolldateien und Tabellen aufgezeichnet werden , der Datensatz selbst ist nicht viel anders. Wenn er in der Tabelle aufgezeichnet wird, können die Informationen zur Ausführungszeit der langsamen Abfrage nicht genau sein

  2. Wenn die Informationen zur langsamen Abfrage in der Tabelle aufgezeichnet werden Die Abfrage ist zwar bequem, aber da es sich um strukturierte Daten handelt, kann die Aufzeichnung in einer langsamen Abfrageprotokolldatei (Flachtextdatei) etwas langsamer sein (persönliche Vermutung). Wenn sie in einer Datei aufgezeichnet werden, muss das Tool mysqldumpslow verwendet werden analysiert.

3. Langsame Abfragen zeichnen keine Abfragen auf, die nicht ausgeführt werden können. Beispielsweise wird long_query_time auf 10 (10 Sekunden) gesetzt. Wenn eine Abfrage 10 Sekunden überschreitet, aber aus anderen Gründen nicht ausgeführt werden kann, ist MySQL langsam Diese Abfrageinformationen werden nicht aufgezeichnet.

Das obige ist der detaillierte Inhalt vonBeispiele für die Konfiguration und Verwendung langsamer Abfrageprotokolle in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn