Heim Datenbank MySQL-Tutorial In welchem ​​Protokoll werden die Datenaktualisierungsvorgänge von MySQL aufgezeichnet?

In welchem ​​Protokoll werden die Datenaktualisierungsvorgänge von MySQL aufgezeichnet?

Nov 02, 2020 pm 01:56 PM
mysql 日志

MySQLs Aktualisierungsvorgänge für Daten werden im allgemeinen Abfrageprotokoll und im Binärprotokoll aufgezeichnet. Das allgemeine Abfrageprotokoll wird zum Aufzeichnen aller Benutzervorgänge verwendet, einschließlich des Startens und Beendens von MySQL-Diensten, Aktualisierungsanweisungen und Abfrageanweisungen usw.; das Binärprotokoll zeichnet verschiedene Datenbankvorgänge in binärer Form auf, zeichnet jedoch keine Abfrageanweisungen auf.

In welchem ​​Protokoll werden die Datenaktualisierungsvorgänge von MySQL aufgezeichnet?

(Empfohlenes Tutorial: MySQL-Video-Tutorial)

Protokoll ist ein wichtiger Teil der Datenbank, der hauptsächlich zum Aufzeichnen des Betriebsstatus, des täglichen Betriebs und der Fehlerinformationen der Datenbank verwendet wird.

MySQL General Query Log (Allgemeines Abfrageprotokoll)

Das General Query Log (Allgemeines Abfrageprotokoll) wird zum Aufzeichnen aller Benutzervorgänge verwendet, einschließlich Starten und Herunterfahren von MySQL-Diensten, Aktualisierungsanweisungen und Abfrageanweisungen usw.

Standardmäßig ist die allgemeine Abfrageprotokollfunktion deaktiviert. Sie können überprüfen, ob das allgemeine Abfrageprotokoll aktiviert ist, indem Sie den folgenden Befehl ausführen:

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+----------------------------------------------------------------+
| Variable_name    | Value                                                          |
+------------------+----------------------------------------------------------------+
| general_log      | OFF                                                            |
| general_log_file | C:\ProgramData\MySQL\MySQL Server 5.7\Data\LAPTOP-UHQ6V8KP.log |
+------------------+----------------------------------------------------------------+
2 rows in set, 1 warning (0.01 sec)
Nach dem Login kopieren

Anhand der Ergebnisse können wir erkennen, dass das allgemeine Abfrageprotokoll deaktiviert ist und die Variable general_log_file den Speicherort der allgemeinen Abfrageprotokolldatei angibt.

Starten und richten Sie das allgemeine Abfrageprotokoll ein

In MySQL können Sie das allgemeine Abfrageprotokoll aktivieren, indem Sie die Protokolloption in der MySQL-Konfigurationsdatei hinzufügen. Das Format lautet wie folgt:

[mysqld]
log=dir/filename
Nach dem Login kopieren

Unter ihnen ist das Verzeichnis Der Parameter gibt den Speicherpfad des allgemeinen Abfrageprotokolls an. Der Parameter gibt den Dateinamen des Protokolls an. Wenn Sie keinen Speicherpfad angeben, wird das allgemeine Abfrageprotokoll standardmäßig im Datenordner der MySQL-Datenbank gespeichert. Wenn Sie keinen Dateinamen angeben, lautet der Standarddateiname hostname.log, wobei hostname den Hostnamen darstellt.

Das allgemeine Abfrageprotokoll anzeigen

Wenn Sie die letzten Vorgänge des Benutzers wissen möchten, können Sie das allgemeine Abfrageprotokoll anzeigen. Allgemeine Abfrageprotokolle werden in Form von Textdateien gespeichert. Sie können normale Textdateien verwenden, um den Protokollinhalt dieses Typs anzuzeigen.

Beispiel 1

Zuerst prüfen wir, ob die allgemeine Abfrageprotokollfunktion aktiviert ist, und fragen dann die Datensätze der Tabelle tb_student ab. Der SQL-Befehl und der Ausführungsprozess sind wie folgt:

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+----------------------------------------------------------------+
| Variable_name    | Value                                                          |
+------------------+----------------------------------------------------------------+
| general_log      | ON                                                             |
| general_log_file | C:\ProgramData\MySQL\MySQL Server 5.7\Data\LAPTOP-UHQ6V8KP.log |
+------------------+----------------------------------------------------------------+
2 rows in set, 1 warning (0.02 sec)

mysql> use test;
Database changed
mysql> SELECT * FROM tb_student;
+----+--------+
| id | name   |
+----+--------+
|  1 | Java   |
|  2 | MySQL  |
|  3 | Python |
+----+--------+
Nach dem Login kopieren

3 Zeilen im Satz (0,06 Sek.)

Öffnen Sie nach erfolgreicher Ausführung das allgemeine Abfrageprotokoll. Der Protokollname lautet hier LAPTOP-UHQ6V8KP.log. Das Folgende ist Teil des allgemeinen Abfrageprotokolls.

C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe, Version: 5.7.29-log (MySQL Community Server (GPL)). started with:
TCP Port: 3306, Named Pipe: MySQL
Time                 Id Command    Argument
2020-05-29T06:43:44.382878Z     7 Quit
2020-05-29T06:44:10.001382Z     8 Connect root@localhost on  using SSL/TLS
2020-05-29T06:44:10.007532Z     8 Query select @@version_comment limit 1
2020-05-29T06:44:11.748179Z     8 Query SHOW VARIABLES LIKE '%general%'
2020-05-29T06:44:25.487472Z     8 Query SELECT DATABASE()
2020-05-29T06:44:25.487748Z     8 Init DB test
2020-05-29T06:44:35.390523Z     8 Query SELECT * FROM tb_student
Nach dem Login kopieren

Man erkennt, dass das Protokoll alle Verhaltensweisen des Kunden sehr deutlich aufzeichnet.

MySQL-Binärprotokoll (Binärprotokoll)

Binärprotokoll (Binärprotokoll), auch Änderungsprotokoll (Aktualisierungsprotokoll) genannt, ist ein sehr wichtiges Protokoll in MySQL. Es wird hauptsächlich zum Aufzeichnen von Änderungen in der Datenbank verwendet, dh DDL- und DML-Anweisungen von SQL-Anweisungen, und umfasst keine Datensatzabfragevorgänge.

Wenn die MySQL-Datenbank unerwartet stoppt, können Sie mithilfe der Binärprotokolldatei sehen, welche Vorgänge der Benutzer ausgeführt hat und welche Änderungen an der Datenbankserverdatei vorgenommen wurden, und dann den Datenbankserver basierend auf den Datensätzen im Binärprotokoll wiederherstellen Datei.

Standardmäßig ist die Binärprotokollfunktion deaktiviert. Sie können überprüfen, ob das Binärprotokoll aktiviert ist, indem Sie den folgenden Befehl ausführen:

mysql> SHOW VARIABLES LIKE 'log_bin';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin       | OFF   |
+---------------+-------+
1 row in set, 1 warning (0.02 sec)
Nach dem Login kopieren

Wie aus den Ergebnissen ersichtlich ist, ist das Binärprotokoll deaktiviert.

Binärprotokolle starten und einrichten

In MySQL können Sie Binärprotokolle aktivieren, indem Sie die Option log-bin in die Konfigurationsdatei einfügen. Das Format lautet wie folgt:

[mysqld]
log-bin=dir/[filename]
Nach dem Login kopieren

Unter diesen gibt der Parameter dir an Speicherpfad der Binärdatei; der Dateiname-Parameter Geben Sie den Dateinamen der Binärdatei in der Form Dateiname.Nummer, die Nummer in der Form 000001, 000002 usw. an.

Jedes Mal, wenn der MySQL-Dienst neu gestartet wird, wird eine neue binäre Protokolldatei generiert. Der Dateinamenteil der Dateinamen dieser Protokolldateien ändert sich nicht und die Anzahl erhöht sich weiter.

Wenn keine Parameter für Verzeichnis und Dateiname vorhanden sind, wird das Binärprotokoll standardmäßig im Datenverzeichnis der Datenbank gespeichert. Der Standarddateiname lautet hostname-bin.number, wobei hostname den Hostnamen darstellt.

Fügen Sie die folgende Anweisung in der Gruppe [mysqld] der Datei my.ini hinzu:

log-bin
Nach dem Login kopieren

Nach dem Neustart des MySQL-Servers sehen Sie die Datei LAPTOP-UHQ6V8KP-bin.000001 im Datenverzeichnis der MySQL-Datenbank und Außerdem wurde die Datei LAPTOP-UHQ6V8KP-bin.index generiert. Hier lautet der Hostname des MySQL-Servers LAPTOP-UHQ6V8KP.

Sie können auch die folgenden Änderungen in der Gruppe [mysqld] der Datei my.ini vornehmen. Die Anweisung lautet wie folgt:

log-bin=C:log\mylog
Nach dem Login kopieren

Nach dem Neustart des MySQL-Dienstes können Sie die Dateien mylog.000001 und mylog.index im Ordner C:log sehen.

Binärprotokoll anzeigen

1. Die Binärprotokolldateiliste anzeigen

Mit dem folgenden Befehl können Sie anzeigen, welche Binärprotokolldateien sich in MySQL befinden:

mysql> SHOW binary logs;
+----------------------------+-----------+
| Log_name                   | File_size |
+----------------------------+-----------+
| LAPTOP-UHQ6V8KP-bin.000001 |       177 |
| LAPTOP-UHQ6V8KP-bin.000002 |       154 |
+----------------------------+-----------+
2 rows in set (0.00 sec)
Nach dem Login kopieren

2 geschrieben wird

Mit dem folgenden Befehl können Sie die binäre Protokolldatei anzeigen, die derzeit in MySQL geschrieben wird.

mysql> SHOW master status;
+----------------------------+----------+--------------+------------------+-------------------+
| File                       | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+----------------------------+----------+--------------+------------------+-------------------+
| LAPTOP-UHQ6V8KP-bin.000002 |      154 |              |                  |                   |
+----------------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
Nach dem Login kopieren

3. Sehen Sie sich den Inhalt der Binärprotokolldatei an

Binärprotokolle werden im Binärformat gespeichert und können nicht direkt geöffnet und angezeigt werden. Wenn Sie das Binärprotokoll anzeigen müssen, müssen Sie den Befehl mysqlbinlog verwenden.

mysqlbinlog 命令的语法形式如下:

mysqlbinlog filename.number
Nach dem Login kopieren

mysqlbinlog 命令只在当前文件夹下查找指定的二进制日志,因此需要在二进制日志所在的目录下运行该命令,否则将会找不到指定的二进制日志文件。

例 1

下面使用 mysqlbinlog 命令,来查看 C:\log 目录下的 mylog.000001 文件,代码执行如下:

C:\Users\11645>cd C:\log
C:\log>mysqlbinlog mylog.000001
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#200527  9:33:37 server id 1  end_log_pos 123 CRC32 0x69738cfd  Start: binlog v 4, server v 5.7.29-log created 200527  9:33:37 at startup
......
Nach dem Login kopieren

由于日志内容较长,这里只展示了 mylog 中的部分内容。

使用 mysqlbinlog 命令时,可以指定二进制文件的存储路径。这样可以确保 mysqlbinlog 命令可以找到二进制文件。上面例子中的命令可以变为如下形式:

mysqlbinlog C:\log\mylog.000001
Nach dem Login kopieren

这样,mysqlbinlog 命令就会到 C:\log 目录下去查找 mylog.000001 文件。如果不指定路径,mysqlbinlog 命令将在当前目录下查找 mylog.000001 文件。

除了 filename.number 文件,MySQL 还会生成一个名为 filename.index 的文件,这个文件存储着所有二进制日志文件的列表,可以用记事本打开该文件。

小技巧:实际工作中,二进制日志文件与数据库的数据文件不放在同一块硬盘上,这样即使数据文件所在的硬盘被破坏,也可以使用另一块硬盘上的二进制日志来恢复数据库文件。两块硬盘同时坏了的可能性要小得多,这样可以保证数据库中数据的安全。

更多编程相关知识,请访问:编程入门!!

Das obige ist der detaillierte Inhalt vonIn welchem ​​Protokoll werden die Datenaktualisierungsvorgänge von MySQL aufgezeichnet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie man phpmyadmin öffnet Wie man phpmyadmin öffnet Apr 10, 2025 pm 10:51 PM

Sie können PhpMyAdmin in den folgenden Schritten öffnen: 1. Melden Sie sich beim Website -Bedienfeld an; 2. Finden und klicken Sie auf das Symbol phpmyadmin. 3. Geben Sie MySQL -Anmeldeinformationen ein; 4. Klicken Sie auf "Login".

MySQL: Eine Einführung in die beliebteste Datenbank der Welt MySQL: Eine Einführung in die beliebteste Datenbank der Welt Apr 12, 2025 am 12:18 AM

MySQL ist ein Open Source Relational Database Management -System, das hauptsächlich zum schnellen und zuverlässigen Speicher und Abrufen von Daten verwendet wird. Sein Arbeitsprinzip umfasst Kundenanfragen, Abfragebedingungen, Ausführung von Abfragen und Rückgabergebnissen. Beispiele für die Nutzung sind das Erstellen von Tabellen, das Einsetzen und Abfragen von Daten sowie erweiterte Funktionen wie Join -Operationen. Häufige Fehler umfassen SQL -Syntax, Datentypen und Berechtigungen sowie Optimierungsvorschläge umfassen die Verwendung von Indizes, optimierte Abfragen und die Partitionierung von Tabellen.

So verwenden Sie ein einzelnes Gewinde -Redis So verwenden Sie ein einzelnes Gewinde -Redis Apr 10, 2025 pm 07:12 PM

Redis verwendet eine einzelne Gewindearchitektur, um hohe Leistung, Einfachheit und Konsistenz zu bieten. Es wird E/A-Multiplexing, Ereignisschleifen, nicht blockierende E/A und gemeinsame Speicher verwendet, um die Parallelität zu verbessern, jedoch mit Einschränkungen von Gleichzeitbeschränkungen, einem einzelnen Ausfallpunkt und ungeeigneter Schreib-intensiver Workloads.

Mysqls Platz: Datenbanken und Programmierung Mysqls Platz: Datenbanken und Programmierung Apr 13, 2025 am 12:18 AM

Die Position von MySQL in Datenbanken und Programmierung ist sehr wichtig. Es handelt sich um ein Open -Source -Verwaltungssystem für relationale Datenbankverwaltung, das in verschiedenen Anwendungsszenarien häufig verwendet wird. 1) MySQL bietet effiziente Datenspeicher-, Organisations- und Abruffunktionen und unterstützt Systeme für Web-, Mobil- und Unternehmensebene. 2) Es verwendet eine Client-Server-Architektur, unterstützt mehrere Speichermotoren und Indexoptimierung. 3) Zu den grundlegenden Verwendungen gehören das Erstellen von Tabellen und das Einfügen von Daten, und erweiterte Verwendungen beinhalten Multi-Table-Verknüpfungen und komplexe Abfragen. 4) Häufig gestellte Fragen wie SQL -Syntaxfehler und Leistungsprobleme können durch den Befehl erklären und langsam abfragen. 5) Die Leistungsoptimierungsmethoden umfassen die rationale Verwendung von Indizes, eine optimierte Abfrage und die Verwendung von Caches. Zu den Best Practices gehört die Verwendung von Transaktionen und vorbereiteten Staten

Warum MySQL verwenden? Vorteile und Vorteile Warum MySQL verwenden? Vorteile und Vorteile Apr 12, 2025 am 12:17 AM

MySQL wird für seine Leistung, Zuverlässigkeit, Benutzerfreundlichkeit und Unterstützung der Gemeinschaft ausgewählt. 1.MYSQL bietet effiziente Datenspeicher- und Abruffunktionen, die mehrere Datentypen und erweiterte Abfragevorgänge unterstützen. 2. Übernehmen Sie die Architektur der Client-Server und mehrere Speichermotoren, um die Transaktion und die Abfrageoptimierung zu unterstützen. 3. Einfach zu bedienend unterstützt eine Vielzahl von Betriebssystemen und Programmiersprachen. V.

So stellen Sie eine Verbindung zur Datenbank von Apache her So stellen Sie eine Verbindung zur Datenbank von Apache her Apr 13, 2025 pm 01:03 PM

Apache verbindet eine Verbindung zu einer Datenbank erfordert die folgenden Schritte: Installieren Sie den Datenbanktreiber. Konfigurieren Sie die Datei web.xml, um einen Verbindungspool zu erstellen. Erstellen Sie eine JDBC -Datenquelle und geben Sie die Verbindungseinstellungen an. Verwenden Sie die JDBC -API, um über den Java -Code auf die Datenbank zuzugreifen, einschließlich Verbindungen, Erstellen von Anweisungen, Bindungsparametern, Ausführung von Abfragen oder Aktualisierungen und Verarbeitungsergebnissen.

So starten Sie MySQL von Docker So starten Sie MySQL von Docker Apr 15, 2025 pm 12:09 PM

Der Prozess des Startens von MySQL in Docker besteht aus den folgenden Schritten: Ziehen Sie das MySQL -Image zum Erstellen und Starten des Containers an, setzen

CentOS installieren MySQL CentOS installieren MySQL Apr 14, 2025 pm 08:09 PM

Die Installation von MySQL auf CentOS umfasst die folgenden Schritte: Hinzufügen der entsprechenden MySQL Yum -Quelle. Führen Sie den Befehl mySQL-server aus, um den MySQL-Server zu installieren. Verwenden Sie den Befehl mySQL_SECURE_INSTALLATION, um Sicherheitseinstellungen vorzunehmen, z. B. das Festlegen des Stammbenutzerkennworts. Passen Sie die MySQL -Konfigurationsdatei nach Bedarf an. Tune MySQL -Parameter und optimieren Sie Datenbanken für die Leistung.

See all articles