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

Die Qualitäten und Fähigkeiten, die ein Webdesigner haben sollte

Webdesign ist eine aufstrebende Randbranche, die n...

Detaillierte Erklärung der Schritte zum Erstellen eines Webservers mit node.js

Vorwort Es ist sehr einfach, einen Server in node...

Detaillierte Erklärung des strikten Modus in JavaScript

Inhaltsverzeichnis Einführung Verwenden des strik...

Detaillierte Erläuterung der Systemeingabe- und -ausgabeverwaltung in Linux

Verwaltung der Ein- und Ausgaben im System 1. Ver...

Detaillierte Schritte zur Installation von MySQL 5.7 über YUM auf CentOS7

1. Gehen Sie zu dem Speicherort, an dem Sie das I...

Detaillierte Schritte zum Einrichten eines Nexus-Servers

1. Die Bedeutung des Aufbaus eines Nexus-Dienstes...

Zusammenfassung zur Verwendung des MySQL-Autorisierungsbefehls „grant“

So verwenden Sie den MySQL-Autorisierungsbefehl „...

Informationen zur ROS2-Installation und zur Verwendung der Docker-Umgebung

Inhaltsverzeichnis Warum Docker verwenden? Docker...

Aktivieren Sie den SSHD-Vorgang im Docker

Installieren Sie zunächst den OpenSSH-Server im D...

JavaScript-Canvas zum Laden von Bildern

In diesem Artikel wird der spezifische Code von J...