Heim  >  Artikel  >  Datenbank  >  MySQL Slow Query: Einführung in die Aktivierung langsamer Abfragen

MySQL Slow Query: Einführung in die Aktivierung langsamer Abfragen

黄舟
黄舟Original
2017-03-20 14:16:521297Durchsuche

Durch die Aktivierung des langsamen Abfrageprotokolls kann MySQL Abfragen aufzeichnen, die die angegebene Zeit überschreiten. Durch das Auffinden und Analysieren von Leistungsengpässen kann die Leistung des Datenbanksystems besser optimiert werden. Im folgenden Artikel werden hauptsächlich relevante Informationen zum Starten langsamer Abfragen in MySQL vorgestellt. Freunde in Not können darauf zurückgreifen.

1. Wozu dient eine langsame Abfrage?

Es kann alle SQL-Anweisungen aufzeichnen, die länger als long_query_time ausgeführt werden, und Ihnen dabei helfen, langsame Abfragen zu finden Ausführungs-SQL, es ist für uns praktisch, diese SQL zu optimieren.

2. Parameterbeschreibung

slow_query_logLangsamer Abfrage-Aktivierungsstatus

slow_query_log_file Der Speicherort, an dem das langsame Abfrageprotokoll gespeichert wird (dieses Verzeichnis erfordert die Schreibberechtigung des laufenden MySQL-Kontos und ist im Allgemeinen auf das MySQL-Datenspeicherverzeichnis eingestellt)

long_query_timeDie Abfrage überschreitet Wie viele Sekunden dauert die Aufnahme

3 Einstellungsschritte

1. Parameter für langsame Abfragen anzeigen

mysql> show variables like 'slow_query%';
+---------------------------+----------------------------------+
| Variable_name  | Value    |
+---------------------------+----------------------------------+
| slow_query_log  | OFF    |
| slow_query_log_file | /mysql/data/localhost-slow.log |
+---------------------------+----------------------------------+

mysql> show variables like 'long_query_time';
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+

2. Einstellungsmethode

Methode 1: Globale -Variable -Einstellung

Setzen Sie die slow_query_log globale Variable auf den Status „EIN“.

mysql> set global slow_query_log='ON';

Legen Sie den Speicherort fest das langsame Abfrageprotokoll wird gespeichert

mysql> set global slow_query_log_file='/usr/local/mysql/data/slow.log';

Abfragedatensatz, wenn er 1 Sekunde überschreitet

mysql> set global long_query_time=1;

Methode 2: Konfigurationsdatei Einstellungen

Ändern Sie die Konfigurationsdatei my.cnf in [add

[mysqld]
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1

3. Starten Sie den MySQL-Dienst neu

service mysqld restart

4. Parameter anzeigen

mysql> show variables like 'slow_query%';
+---------------------+--------------------------------+
| Variable_name | Value    |
+---------------------+--------------------------------+
| slow_query_log | ON    |
| slow_query_log_file | /usr/local/mysql/data/slow.log |
+---------------------+--------------------------------+

mysql> show variables like 'long_query_time';
+-----------------+----------+
| Variable_name | Value |
+-----------------+----------+
| long_query_time | 1.000000 |
+-----------------+----------+

4. Test

1. Führen Sie eine langsame Abfrage-SQL-Anweisung aus

mysql> select sleep(2);

2. Überprüfen Sie, ob ein langsames Abfrageprotokoll generiert wird

ls /usr/local/mysql/data/slow.log

Wenn die log vorhanden ist, MySQL aktiviert die langsame Abfrageeinstellung erfolgreich!

Zusammenfassung

Das obige ist der detaillierte Inhalt vonMySQL Slow Query: Einführung in die Aktivierung langsamer Abfragen. 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