Detaillierte Erläuterung des zeitaufwändigen SQL-Beispiels für MySQL-Datensätze

Detaillierte Erläuterung des zeitaufwändigen SQL-Beispiels für MySQL-Datensätze

MySQL zeichnet zeitaufwändiges SQL auf

MySQL kann zeitaufwändiges SQL oder SQL, das keine Indizes verwendet, zur Optimierung und Analyse im langsamen Protokoll aufzeichnen.

1. Aktivieren Sie das MySQL-Protokoll für langsame Abfragen:

Das MySQL-Protokoll für langsame Abfragen ist sehr nützlich, um problematische Abfragen zu verfolgen. Es kann die SQL-Anweisungen analysieren, die im aktuellen Programm viele Ressourcen verbrauchen. Wie also aktiviert man die Aufzeichnung des MySQL-Protokolls für langsame Abfragen?

mysql> Variablen wie „log_slow_queries“ anzeigen;
+------------------+--------+
| Variablenname | Wert |
+------------------+--------+
| log_slow_queries | AUS | 
+------------------+--------+
1 Zeile im Satz (0,01 Sek.)

MySQL> 

Dies bedeutet, dass die Slow-Log-Funktion nicht aktiviert ist. Um sie zu aktivieren, müssen Sie die MySQL-Konfigurationsdatei ändern und die folgenden beiden Parameter in der Konfigurationsdatei "[mysqld]" hinzufügen:

lange_Abfragezeit=1
log-slow-queries=/var/mysql/logs/slow.log

veranschaulichen

lange_Abfragezeit

Dieser Parameter gibt die Messzeit einer langsamen Abfrage in Sekunden an, mit einem Mindestwert von 1 und einem Standardwert von 10. Jede SQL-Anweisung, die länger als „long_query_time“ dauert, wird im Protokoll für langsame Abfragen aufgezeichnet.

log-slow-queries[=Dateiname]

Der Parameter file_name ist optional. Der Standardwert ist host_name-slow.log. Wenn der Parameter file_name angegeben ist, zeichnet MySQL das langsame Abfrageprotokoll in der durch file_name festgelegten Datei auf. Wenn file_name einen relativen Pfad angibt, zeichnet MySQL das Protokoll im MySQL-Datenverzeichnis auf. Dieser Parameter kann nur in der Konfigurationsdatei hinzugefügt und nicht in der Befehlszeile ausgeführt werden.

2. Konfigurieren Sie das langsame Protokoll, um nicht verwendete Indexabfragen aufzuzeichnen

Sie können den Parameter „log_queries_not_using_indexes“ zur MySQL-Startkonfigurationsdatei oder zu Befehlszeilenparametern hinzufügen, um die Abfrageanweisungen, die keine Indizes verwenden, zum langsamen Protokoll hinzuzufügen.

Ein Beispiel dafür ist wie folgt:

[root@localhost mysqlsla-2.03]# mehr /etc/my.cnf 
[mysqld]
Datenverzeichnis=/var/lib/mysql
log_bin=/tmp/mysql/bin-log/mysql-bin.log
log_bin=EIN
socket=/var/lib/mysql/mysql.sock
Benutzer=mysql
# Standardmäßig wird das alte Kennwortformat verwendet, um die Kompatibilität mit MySQL 3.x sicherzustellen
# Clients (die das Kompatibilitätspaket mysqlclient10 verwenden).
alte_Passwörter=1


log_slow_queries=/tmp/127_slow.log
lange_Abfragezeit=1
log_queries_not_using_indexes

.......

Nach dem Neustart von MySQL lauten die Prüfergebnisse wie folgt:

mysql> Variablen wie „log_slow_queries“ anzeigen;
+------------------+--------+
| Variablenname | Wert |
+------------------+--------+
| log_slow_queries | EIN | 
+------------------+--------+
1 Zeile im Satz (0,00 Sek.)

mysql> Variablen wie „long_query_time“ anzeigen;
+-----------------+--------+
| Variablenname | Wert |
+-----------------+--------+
| lange Abfragezeit | 2 | 
+-----------------+--------+
1 Zeile im Satz (0,00 Sek.)

MySQL>

Oben finden Sie eine ausführliche Erklärung des zeitaufwändigen SQL-Beispiels für MySQL-Aufzeichnungen. Wenn Sie Fragen haben, hinterlassen Sie bitte eine Nachricht oder diskutieren Sie in der Community dieser Site. Vielen Dank fürs Lesen und ich hoffe, allen helfen zu können. Vielen Dank für Ihre Unterstützung dieser Site!

Das könnte Sie auch interessieren:
  • 5 Tipps zum Schutz Ihres MySQL Data Warehouse
  • So vermeiden Sie die URL-Zeitzonenfalle in MySQL
  • Kompilieren und installieren Sie MySQL 5.6 in CentOS Yum
  • Beispiele für die korrekte Verwendung von AES_ENCRYPT() und AES_DECRYPT() zum Verschlüsseln und Entschlüsseln von MySQL
  • Tutorial zur Verwendung von Prepare-, Execute- und Deallocate-Anweisungen in MySQL
  • Grundlegendes Tutorial zu PDO-Operationen mit MySQL (empfohlen)

<<:  Erläuterung zur Verwendung und Änderung des Standard-Programmveröffentlichungspfads von Tomcat

>>:  CocosCreator Universal Framework Design Network

Artikel empfehlen

Natives JS zum Erzielen eines Puzzle-Effekts

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

Diskussion über Standard-Rand- und Füllwerte allgemeiner Elemente

Heute haben wir die Frage besprochen, wie hoch de...

Welche Codes sollte ich beherrschen, wenn ich Webdesign lerne?

In diesem Artikel werden einige der Techniken ausf...

Detaillierte Erläuterung der erweiterten Konstruktionseigenschaften von Vue

Inhaltsverzeichnis 1. Richtlinie Zollrichtlinie 2...

Detaillierte Erklärung zur Verwendung der vue3 Teleport-Sofortbewegungsfunktion

Die Verwendung der vue3 Teleport-Sofortbewegungsf...

CSS realisiert Div vollständig zentriert, ohne Höhe festzulegen

Erfordern Das Div unter dem Körper ist vertikal z...

Anwendung von Hadoop-Zählern und Datenbereinigung

Datenbereinigung (ETL) Vor dem Ausführen des MapR...

PageSpeed ​​Optimierung im Überblick

Ich glaube, dass das Internet zu einem immer unve...

Detaillierte Beschreibung der Funktion von new in JS

Inhaltsverzeichnis 1. Beispiel 2. Erstelle 100 So...

Aufrufen von Baidu Map zum Abrufen von Längen- und Breitengrad in Vue

Im Projekt ist es erforderlich, den Breiten- und ...

Detaillierte Erläuterung der MySQL-Indexauswahl und -Optimierung

Inhaltsverzeichnis Indexmodell B+Baum Indexauswah...

Tutorial zur Installation des Nginx-RTMP-Streaming-Servers unter Ubuntu 14

1. RTMP Das RTMP-Streaming-Protokoll ist ein von ...