Aktivieren und Konfigurieren des MySQL-Protokolls für langsame Abfragen

Aktivieren und Konfigurieren des MySQL-Protokolls für langsame Abfragen

Einführung

Das MySQL-Protokoll für langsame Abfragen ist eine wichtige Funktion zur Fehlerbehebung bei problematischen SQL-Anweisungen und zur Überprüfung der aktuellen MySQL-Leistung.

Überprüfen Sie, ob die langsame Abfragefunktion aktiviert ist:

mysql> Variablen wie „slow_query%“ anzeigen;
+---------------------+------------------------------------+
| Variablenname | Wert |
+---------------------+------------------------------------+
| slow_query_log | AUS |
| slow_query_log_datei | /var/lib/mysql/instance-1-slow.log |
+---------------------+------------------------------------+
2 Zeilen im Satz (0,01 Sek.)
mysql> Variablen wie „long_query_time“ anzeigen;
+-----------------+------------+
| Variablenname | Wert |
+-----------------+------------+
| lange Abfragezeit | 10.000000 |
+-----------------+------------+
1 Zeile im Satz (0,00 Sek.)

veranschaulichen:

slow_query_log Status der Aktivierung langsamer Abfragen
slow_query_log_file Der Speicherort, an dem das langsame Abfrageprotokoll gespeichert wird (dieses Verzeichnis erfordert Schreibberechtigungen für das laufende MySQL-Konto und ist im Allgemeinen auf das MySQL-Datenspeicherverzeichnis eingestellt)
long_query_time Wie viele Sekunden dauert es, bis eine Abfrage aufgezeichnet wird?

Konfiguration

Temporäre Konfiguration

Die Protokollierung langsamer Abfragen ist standardmäßig nicht aktiviert. Aktivieren Sie sie vorübergehend mit dem folgenden Befehl:

mysql> globales slow_query_log='ON' festlegen;
Abfrage OK, 0 Zeilen betroffen (0,00 Sek.)
 
mysql> setze globale slow_query_log_file='/var/lib/mysql/instance-1-slow.log';
Abfrage OK, 0 Zeilen betroffen (0,00 Sek.)
 
mysql> setze globale long_query_time=2;
Abfrage OK, 0 Zeilen betroffen (0,00 Sek.)

Permanente Konfiguration Ändern Sie die Konfigurationsdatei, um den Status einer permanenten Konfiguration zu erreichen:

/etc/mysql/conf.d/mysql.cnf
[mysqld]
slow_query_log = EIN
slow_query_log_file = /var/lib/mysql/instance-1-slow.log
lange_Abfragezeit = 2

Starten Sie MySQL nach der Konfiguration neu.

prüfen

Führen Sie den folgenden Befehl aus, um die problematische SQL-Anweisung auszuführen:

mysql> wähle sleep(2);
+----------+
| schlafen(2) |
+----------+
| 0 |
+----------+
1 Zeile im Satz (2,00 Sek.)

Sehen Sie sich dann den Inhalt des langsamen Abfrageprotokolls an:

$ cat /var/lib/mysql/instance-1-slow.log
/usr/sbin/mysqld, Version: 8.0.13 (MySQL Community Server – GPL). gestartet mit:
TCP-Port: 3306 Unix-Socket: /var/run/mysqld/mysqld.sock
Zeit-ID-Befehlsargument
/usr/sbin/mysqld, Version: 8.0.13 (MySQL Community Server – GPL). gestartet mit:
TCP-Port: 3306 Unix-Socket: /var/run/mysqld/mysqld.sock
Zeit-ID-Befehlsargument
# Zeit: 2018-12-18T05:55:15.941477Z
# Benutzer@Host: root[root] @ localhost [] ID: 53
# Abfragezeit: 2.000479 Sperrzeit: 0.000000 Gesendete Zeilen: 1 Untersuchte Zeilen: 0
SET-Zeitstempel=1545112515;
wähle sleep(2);

Oben finden Sie Einzelheiten zum Aktivieren und Konfigurieren des MySQL Slow Query Log. Weitere Informationen zum MySQL Slow Query Log finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der MySql-Analyse langsamer Abfragen und Öffnen des Protokolls langsamer Abfragen
  • So aktivieren Sie das MySQL-Protokoll für langsame Abfragen log-slow-queries
  • Tipps zum Aktivieren des langsamen Abfrageprotokolls in MYSQL5.7.9
  • mysql langsame Abfrage aktivieren So aktivieren Sie die Protokollierung langsamer MySQL-Abfragen
  • So aktivieren Sie das langsame Abfrageprotokoll in MySQL
  • So aktivieren Sie die Protokollfunktion für langsame Abfragen in MySQL
  • Detaillierte Erklärung zum Aktivieren des langsamen Abfrageprotokolls in der MySQL-Datenbank
  • Die Rolle und Öffnung des MySQL-Protokolls für langsame Abfragen
  • MySQL-Optimierungslösung: Aktivieren Sie das Protokoll für langsame Abfragen

<<:  XHTML-Tags, die durch den Ort der Verwendung leicht verwechselt werden können

>>:  Beheben Sie das Problem, dass weder der Repository- noch der Tag-Name leer sind, nachdem Docker ein neues Image geladen hat.

Artikel empfehlen

Detaillierte Erklärung zur Verwendung der Vue-Komponente zur Kennzeichensuche

Eine einfache Nummernschild-Eingabekomponente (vu...

So erhöhen Sie die Ladegeschwindigkeit von HTML-Seiten

(1) Reduzieren Sie HTTP-Anfragen. (Ressourcendate...

Probleme und Lösungen bei der Installation von Mininet auf Ubuntu 16.04.4LTS

Mininet Mininet ist eine leichtgewichtige, softwa...

Konvertieren Sie ausgeschnittene PSD-Bilder in das Div+CSS-Format

Beispiel für das Zuschneiden einer Webseite von P...

Implementierung von React-Loop-Daten (Liste)

Lassen Sie uns zunächst die Daten simulieren, die...