Heim >Datenbank >MySQL-Tutorial >Was ist eine langsame MySQL-Abfrageanweisung?
In MySQL beziehen sich langsame Abfrageanweisungen auf Anweisungen, deren Antwortzeit den Schwellenwert im langsamen Abfrageprotokoll überschreitet. Die spezifische Laufzeit überschreitet den Wert „long_query_time“ der SQL-Anweisung. Sie können festlegen, ob dies der Fall ist Aktivieren Sie die langsame Abfrage. „1“ bedeutet „Ein“, „0“ bedeutet „Aus“.
Die Betriebsumgebung dieses Tutorials: Windows10-System, MySQL8.0.22-Version, Dell G3-Computer.
Der Standardwert von long_query_time ist 10, was bedeutet, dass Anweisungen länger als 10 Sekunden ausgeführt werden.
Standardmäßig startet die MySQL-Datenbank das langsame Abfrageprotokoll nicht. Wenn dies nicht für die Optimierung erforderlich ist, wird es im Allgemeinen nicht empfohlen, diesen Parameter zu starten, da er langsam ist Das Abfrageprotokoll wird mehr oder weniger Probleme verursachen. Es wird eine gewisse Auswirkung auf die Leistung haben. Das langsame Abfrageprotokoll unterstützt das Schreiben von Protokolldatensätzen in Dateien und auch das Schreiben von Protokolldatensätzen in Datenbanktabellen.
Erklärung der Parameter im Zusammenhang mit der langsamen MySQL-Abfrage:
Standardmäßig ist der Wert von slow_query_log AUS, was bedeutet, dass das langsame Abfrageprotokoll deaktiviert werden kann, indem der Wert von slow_query_log wie unten gezeigt eingestellt wird:
mysql> show variables like '%slow_query_log%'; +---------------------+-----------------------------------------------+ | Variable_name | Value | +---------------------+-----------------------------------------------+ | slow_query_log | OFF | | slow_query_log_file | /home/WDPM/MysqlData/mysql/DB-Server-slow.log | +---------------------+-----------------------------------------------+rows in set (0,00 Sek.)
mysql> set global slow_query_log=1;
Query OK, 0 rows affected (0.09 sec)
Die Verwendung von set global slow_query_log=1 zum Aktivieren des langsamen Abfrageprotokolls hat nur Auswirkungen auf die aktuelle Datenbank und wird nach dem Neustart von MySQL ungültig.
Wenn Sie möchten, dass es dauerhaft wirksam wird, müssen Sie die Konfigurationsdatei my.cnf ändern (dasselbe gilt für andere Systemvariablen).
my.cnf Um die Parameter slow_query_log und slow_query_log_file hinzuzufügen oder zu ändern, wie unten gezeigt
slow_query_log = 1 slow_query_log_file = /tmp/mysql_slow.log
Starten Sie dann den MySQL-Server neu.
slow_query_log_fileDieser Parameter wird verwendet, um den Speicherpfad des langsamen Abfrageprotokolls anzugeben. Der Standardwert ist die Datei „host_name-slow.log“
mysql> show variables like 'slow_query_log_file'; +---------------------+-----------------------------------------------+ | Variable_name | Value | +---------------------+-----------------------------------------------+ | slow_query_log_file | /home/WDPM/MysqlData/mysql/DB-Server-slow.log | +---------------------+-----------------------------------------------+ 1 row in set (0.00 sec)
Empfohlenes Lernen:
MySQL-Video-TutorialDas obige ist der detaillierte Inhalt vonWas ist eine langsame MySQL-Abfrageanweisung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!