VorwortMySQL ist ein relationales Datenbankverwaltungssystem, das vom schwedischen Unternehmen MySQL AB entwickelt wurde und ein Produkt von Oracle ist. MySQL ist eines der beliebtesten relationalen Datenbankverwaltungssysteme. Im Hinblick auf Webanwendungen ist MySQL eine der besten RDBMS-Anwendungssoftwares (Relational Database Management System). In jeder Datenbank gibt es verschiedene Protokolle, die alle Aspekte der Datenbankarbeit aufzeichnen, um Datenbankadministratoren dabei zu helfen, verschiedene in der Datenbank aufgetretene Ereignisse zu verfolgen.
Diese Protokolle zeichnen Spuren verschiedener Aspekte der Datenbank auf. Das Erlernen der Verwendung von MySQL-Protokollen ist für uns bei der Verwendung und Wartung der Datenbank sehr hilfreich. 1. Fehlerprotokoll Das Fehlerprotokoll ist eines der wichtigsten Protokolle in MySQL. Es zeichnet Informationen darüber auf, wann mysqld gestartet und gestoppt wird und wann während des Betriebs des Servers schwerwiegende Fehler auftreten. Wenn die Datenbank ausfällt und nicht normal verwendet werden kann, können Sie zuerst dieses Protokoll überprüfen. 1. Überprüfen Sie den Protokollspeicherort Variablen wie „log_error%“ anzeigen; 2. Protokollinhalt anzeigen tail -f /var/lib/mysql/xxx.err 2. Binäres ProtokollDas Binärprotokoll (BINLOG) zeichnet alle DDL-Anweisungen (Data Definition Language) und DML-Anweisungen (Data Manipulation Language) auf, schließt jedoch keine Datenabfrageanweisungen ein. Dieses Protokoll spielt bei der Datenwiederherstellung im Katastrophenfall eine äußerst wichtige Rolle. Die Master-Slave-Replikation von MySQL wird über dieses Binärprotokoll erreicht. 1. Binäres Logging aktivierenDas Binärprotokoll ist standardmäßig nicht aktiviert. Sie müssen es in der MySQL-Konfigurationsdatei aktivieren und das Format des MySQL-Protokolls konfigurieren.
#Konfigurieren Sie die Binlog-Protokollierung. Das Protokolldateipräfix lautet mysqlbin -----> Die generierten Dateinamen lauten wie folgt: mysqlbin.000001,mysqlbin.000002 log_bin=mysqlbin #Konfigurieren Sie das Binärprotokollformat binlog_format=STATEMENT 2. Binäres Protokollformat(1) ERKLÄRUNG Dieses Protokollformat zeichnet SQL-Anweisungen in der Protokolldatei auf. Jede SQL-Anweisung, die die Daten ändert, wird in der Protokolldatei aufgezeichnet. Der Text jeder Anweisung kann mit dem von MySQL bereitgestellten Tool mysqlbinlog klar angezeigt werden. Während der Master-Slave-Replikation analysiert der Slave das Protokoll in den Originaltext und führt es auf dem Slave erneut aus. (2) REIHE Dieses Protokollformat zeichnet die Datenänderungen jeder Zeile in der Protokolldatei auf, anstatt SQL-Anweisungen aufzuzeichnen. Wenn Sie beispielsweise die SQL-Anweisung „update tb_book set status='1'“ ausführen, wird eine Zeile der SQL-Datei im Protokoll aufgezeichnet, wenn das Protokollformat STATEMENT ist. Wenn es ROW ist, zeichnet das Protokoll im ROW-Format die Datenänderungen jeder Zeile auf, da die gesamte Tabelle aktualisiert wird, d. h. jede Datensatzzeile geändert wird. (3) GEMISCHT Dies ist das aktuelle Standardprotokollformat für MySQL, eine Mischung aus STATEMENT- und ROW-Formaten. Standardmäßig wird STATEMENT verwendet, in einigen Sonderfällen wird jedoch ROW zur Aufzeichnung verwendet. Das MIXED-Format kann die Vorteile beider Modi optimal nutzen und gleichzeitig ihre Nachteile vermeiden. 3. Protokoll lesenDa das Protokoll im Binärformat gespeichert ist und nicht direkt gelesen werden kann, müssen Sie das Tool mysqlbinlog verwenden, um es anzuzeigen. Die Syntax lautet wie folgt mysqlbinlog-Protokolldatei; 4. STATEMENT-Formatprotokoll anzeigen(1) Führen Sie die Insert-Anweisung aus in tb_book-Werte einfügen (null, „Lucene“, „01.05.2088“, „0“); (2) Suchen Sie die Binärdatei im MySQL-Datendateiverzeichnis mysqlbin.index ist die Protokollindexdatei, die den Protokolldateinamen aufzeichnet. mysql-bin.000001 ist die Protokolldatei (3) Anzeige von Logdateien 5. Protokolle im ROW-Format anzeigen(1) Konfigurieren Sie in der Konfigurationsdatei #Konfigurieren Sie die Binlog-Protokollierung. Das Protokolldateipräfix lautet mysqlbin -----> Die generierten Dateinamen lauten wie folgt: mysqlbin.000001,mysqlbin.000002 log_bin=mysqlbin #Konfigurieren Sie das Binärprotokollformat binlog_format=ROW Hinweis: Denken Sie daran, den MySQL-Dienst jedes Mal neu zu starten, wenn Sie die Konfigurationsdatei ändern Dienst MySQL Neustart (2) Daten eingeben Wenn das Protokollformat ROW ist, können Sie die Daten nicht direkt verstehen. Sie können den Parameter -vv nach mysqlbinlog hinzufügen. Verwenden Sie den Parameter --no-defaults, um die Auswirkungen des Zeichensatzes zu vermeiden.
6. Log-LöschungBei stark ausgelasteten Systemen werden täglich große Mengen an Protokollen generiert. Wenn diese Protokolle längere Zeit nicht gelöscht werden, beanspruchen sie viel Speicherplatz. Hier sind einige gängige Möglichkeiten zum Löschen von Protokollen: (1) Methode 1 Löschen Sie alle Binlog-Protokolle mit dem Befehl „Reset Master“. Nach dem Löschen wird die Protokollnummer wieder von xxxx.000001 an beginnen. Vor dem Löschen die Logdatei abfragen: Führen Sie den Befehl „Protokoll löschen“ aus Master zurücksetzen Erneut prüfen Die letzte verbleibende 000001 ist eine leere Konfigurationsdatei (2) Methode 2 Master-Protokolle nach ,mysqlbin.****** löschen Dieser Befehl löscht alle Protokolle vor der Nummer (3) Methode 3 Master-Protokolle vor „yyyy-mm-dd hh24:mi:ss“ löschen Dieser Befehl löscht alle Protokolle, die vor (4) Methode 4 Legen Sie den Parameter 3. AbfrageprotokollDas Abfrageprotokoll zeichnet alle Operationsanweisungen des Clients auf, während das Binärprotokoll keine SQL-Anweisungen zum Abfragen von Daten enthält. Standardmäßig ist die Abfrageprotokollierung nicht aktiviert. Wenn Sie das Abfrageprotokoll aktivieren müssen, können Sie die folgende Konfiguration festlegen #Mit dieser Option wird das Abfrageprotokoll aktiviert. Optionaler Wert: 0 oder 1. 0 bedeutet aus, 1 bedeutet an general_log=1 #Legen Sie den Namen der Protokolldatei fest. Wenn nicht angegeben, lautet der Standarddateiname host_name.log general_log_file=Dateiname 1. Abfrageprotokoll aktivieren2. Führen Sie eine Reihe von Operationen durch3. Abfrageprotokoll anzeigen4. Langsames AbfrageprotokollDas langsame Abfrageprotokoll zeichnet alle SQL-Anweisungen auf, deren Ausführungszeit den Einstellwert des Parameters „long_query_time“ überschreitet und deren Anzahl gescannter Datensätze nicht kleiner als „min_examined_row_limit“ ist. Der Standardwert von long_query_time beträgt 10 Sekunden, der Mindestwert ist 0 und die Genauigkeit kann Mikrosekunden betragen. 1. Dateispeicherort und -formatDas Protokoll langsamer Abfragen ist standardmäßig deaktiviert. Das langsame Abfrageprotokoll kann durch zwei Parameter gesteuert werden # Mit diesem Parameter wird gesteuert, ob das langsame Abfrageprotokoll aktiviert ist. Die möglichen Werte sind: 1 und 0. 1 bedeutet aktiviert und 0 bedeutet deaktiviert. slow_query_log=1 # Mit diesem Parameter wird der Dateiname des langsamen Abfrageprotokolls angegeben slow_query_log_file=slow_query.log # Mit dieser Option wird das Abfragezeitlimit konfiguriert. Wenn die Abfragezeit dieses Limit überschreitet, wird sie als langsame Abfrage betrachtet und eine Protokollierung ist erforderlich. Der Standardwert ist 10 Sekunden. lange_Abfragezeit=10 Im Allgemeinen reicht es aus, den Wert auf etwa 2 Sekunden einzustellen. In meinem Experiment habe ich ihn auf 0,5 Sekunden eingestellt, um die langsame Abfrage abzuschließen. Die aktuelle long_query_time kann im MySQL-Client abgefragt werden 2. Abfragevorgänge ausführen(1) Schauen Sie sich vor der Abfrage das langsame Abfrageprotokoll an (2) Schnellere Abfrageaktion durchführen (3) Führen Sie eine langsame Abfrageaktion aus Wenn das langsame Abfrageprotokoll viel Inhalt enthält, ist es mühsam, die Datei direkt anzuzeigen. Zu diesem Zeitpunkt können Sie das mit MySQL gelieferte Tool mysqldumpslow verwenden, um das langsame Abfrageprotokoll zu klassifizieren und zusammenzufassen. Da hier nur ein langsamer Abfragedatensatz vorhanden ist, wird der Effekt von mysqldumpslow nicht reflektiert. Wenn jedoch viele langsame Abfragedatensätze vorhanden sind, können diese klassifiziert und zusammengefasst werden ZusammenfassenDies ist das Ende dieses Artikels über das einfache Tutorial zur Verwendung des MySQL-Protokollsystems. Weitere relevante Inhalte zum MySQL-Protokollsystem finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Erste Schritte: Eine kurze Einführung in die grundlegenden Tags und Attribute von HTML
>>: Einführung und Installation von vue-cli
Vorwort Die Datenbank-Deadlocks, die ich zuvor er...
Inhaltsverzeichnis Warum brauchen wir Docker? Bei...
Letzte Woche gab mir der Lehrer eine kleine Hausa...
Wenn Sie in CSS die Eigenschaft „font-family“ ver...
In diesem Artikel wird der spezifische Code zum Z...
Gegeben sei ein Div mit folgendem Hintergrundbild...
Inhaltsverzeichnis Überblick CommonJS-Spezifikati...
Inhaltsverzeichnis 1. Grundlegende Verwendung 2. ...
Ich lerne derzeit etwas über MySQL-Optimierung. D...
Inhaltsverzeichnis 1. Verwendung von Pfeilfunktio...
Inhaltsverzeichnis 1. Ursache 2. Geräteinformatio...
In diesem Artikel werden Docker Container (orches...
1. Hintergrund Die folgenden zwei Probleme treten...
Vorwort: Die verteilte Master-Slave-Architektur v...
Vorwort Wir alle wissen, dass Startups zunächst m...