In diesem Tutorial zeigen wir Ihnen, wie Sie ein langsames Abfrageprotokoll für MySQL auf Linux-Systemen aktivieren. MySQL verfügt über eine integrierte Funktionalität, mit der Sie SQL-Abfragen in einer Datei protokollieren können Aktivieren Sie die vollständigen SQL-Abfrageprotokolle in eine Datei oder nur langsam laufende Abfrageprotokolle. Es ist für uns einfach, die SQL-Anweisung zu beheben/debuggen, wenn das SQL-Abfrageprotokoll aktiviert ist. Das langsame Abfrageprotokoll wird verwendet, um Abfragen zu finden, deren Ausführung lange dauert und stellen daher Kandidaten für eine Optimierung dar. Wir gehen davon aus, dass Sie MySQL bereits mit Administratorrechten auf dem Linux-System installiert haben, und wir gehen davon aus, dass Sie bereits über ein geringes Maß an MySQL-Kenntnissen verfügen.
Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo
hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen Schritt für Schritt das Protokoll zur Aktivierung langsamer Abfragen für MySQL.
Voraussetzungen
- Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:CentOS Linux.
- Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
- SSH-Zugriff auf den Server (oder öffnen Sie einfach das Terminal, wenn Sie sich auf einem Desktop befinden).
- Ein
non-root sudo user
oder Zugriff auf denroot user
. Wir empfehlen, alsnon-root sudo user
zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.
Langsames Abfrageprotokoll für MySQL aktivieren
Schritt 1. Beginnen wir zunächst damit, sicherzustellen, dass Ihr System auf dem neuesten Stand ist.
sudo dnf clean all sudo dnf update
Schritt 2. MySQL-Server konfigurieren.
Nun bearbeiten wir die /etc/my.cnf
Datei mit Ihrem bevorzugten Texteditor.
nano /etc/my.cnf
Sobald Sie Ihre my.cnf
haben Datei öffnen, fügen Sie die folgende Zeile unter „[mysqld]
”-Abschnitt.
[mysqld] log-slow-queries log-slow-queries= /var/log/mysql/slow-queries.log long_query_time=5
Speichere und schließe die Datei, dann erstelle die Datei slow-queries.log. Du kannst die Datei an jeder beliebigen Stelle haben, solange du den Pfad definierst in Ihrer my.cnf
.
touch /var/log/mysql/slow-queries.log chown mysql.mysql /var/log/mysql/slow-queries.log
Starten Sie schließlich den MySQL-Dienst neu. Geben Sie den folgenden Befehl ein:
sudo systemctl restart mysql
Schritt 3. Langsame Protokollabfrage überprüfen.
Nach erfolgreicher Konfiguration. Suchen Sie nach dem „slow_query_log
”-Parameter (es sollte “ON” sein):
mysql> show variables like '%slow%'; +---------------------+--------------------------------+ | Variable_name | Value | +---------------------+--------------------------------+ | log_slow_queries | ON | | slow_launch_time | 2 | | slow_query_log | ON | | slow_query_log_file | /var/lib/mysql/mysqld-slow.log | +---------------------+--------------------------------+ 4 rows in set (0.00 sec)
Als nächstes prüfen wir den Parameter „long_query_time
“, sollte die Zeit 5 Sekunden betragen:
mysql> show variables like '%long%'; +--------------------+----------+ | Variable_name | Value | +--------------------+----------+ | long_query_time | 5.000000 | | max_long_data_size | 1048576 | +--------------------+----------+ 2 rows in set (0.00 sec)
Herzlichen Glückwunsch! Sie haben erfolgreich ein langsames Abfrageprotokoll auf MySQL aktiviert. Vielen Dank, dass Sie dieses Tutorial verwendet haben, um ein langsames Abfrageprotokoll auf MySQL im Linux-System zu aktivieren. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Sie sehen auf der offiziellen MySQL-Website nach.