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

Zusammenfassung von 10 erweiterten Tipps für Vue Router

Vorwort Vue Router ist der offizielle Routing-Man...

Beispiel für die Konvertierung von Webpack-Bildern in Base64

URL-Loader herunterladen yarn add -D URL-Lader Mo...

Installations- und Konfigurationstutorial von MongoDB unter Linux

MongoDB -Installation Wählen Sie die Installation...

Detaillierter Prozess der Installation von Jenkins-2.249.3-1.1 mit Docker

Inhaltsverzeichnis 1. Docker installieren 2. Zieh...

Reiner CSS3-Code zur Implementierung einer laufenden Uhr

Wirkung der OperationCode-Implementierung html &l...

So installieren Sie das Modul „lua-nginx-module“ in Nginx

ngx_lua_module ist ein Nginx-HTTP-Modul, das den ...

So implementieren Sie die JavaScript-Ausgabe der Fibonacci-Folge

Inhaltsverzeichnis Thema analysieren Basislösung ...

Detaillierte Erklärung der Stammverzeichniseinstellungen in nginx.conf

Bei der Konfiguration von nginx.conf treten immer...

Beschreiben Sie kurz die MySQL InnoDB-Speicher-Engine

Vorwort: Die Speicher-Engine ist der Kern der Dat...