Heim  >  Artikel  >  Datenbank  >  Einführung in die sechs Protokolltypen in MySQL

Einführung in die sechs Protokolltypen in MySQL

零下一度
零下一度Original
2017-05-12 11:03:383422Durchsuche

MySQL verfügt hauptsächlich über die folgenden Protokolltypen:

Fehlerprotokoll – Informationen während des Start- und Herunterfahrvorgangs des MySQL-Dienstes sowie andere Fehler- und Warninformationen. Der Standardwert befindet sich im Datenverzeichnis.

Allgemeines Abfrageprotokoll – ein Protokoll, das zum Aufzeichnen ausgewählter Abfrageanweisungen verwendet wird. general_log und general_log_file sind standardmäßig deaktiviert und es wird empfohlen, sie zu deaktivieren.

Langsames Abfrageprotokoll – log-slow-queries zeichnet alle SQL-Anweisungen auf, die long_query_time überschreiten.

Binärprotokoll – zeichnet alle Vorgänge auf, die Datenänderungen verursachen, und wird für die Sicherung und Wiederherstellung verwendet. Das Binärprotokoll wird standardmäßig im Datenverzeichnis gespeichert und bei Aktualisierungen und Dienstneustarts aktualisiert.

Relay-Protokoll – Ereignisse aus der Binärdatei des Masterservers kopiert und als Binärdatei im gleichen Format wie das Binärprotokoll gespeichert.

Transaktionsprotokoll – stellen Sie die Transaktionskonsistenz sicher.

Langsames Abfrageprotokoll:

mysql> show variables like "long%";                    #查看慢查询日志信息
+-----------------+----------+
| Variable_name   | Value    |
+-----------------+----------+
| long_query_time | 3.000000 |
+-----------------+----------+
1 row in set (0.13 sec)
mysql> show variables like "slow%";                    #查看慢查询日志设置
+---------------------+-----------------------------+
| Variable_name       | Value                       |
+---------------------+-----------------------------+
| slow_launch_time    | 2                           |
| slow_query_log      | OFF                         |
| slow_query_log_file | /data/mysql/slave2-slow.log |
+---------------------+-----------------------------+
3 rows in set (0.06 sec)
mysqldumpslow -s c -t 10 /database/mysql/mysql06_slow.log #查看访问最多的10个SQL
mysql> set long_query_time=5;                           #慢查询时间设置,永久改变需要更改
Query OK, 0 rows affected (0.25 sec)                    配置文件
    二进制日志:
mysql> show global variables like "%log%";              #查看日志相关变量
mysql> show variables like "%log_bin%";                 #查看二进制变量
+---------------------------------+-------+
| Variable_name                   | Value |
+---------------------------------+-------+
| log_bin                         | OFF   |
| log_bin_basename                |       |
| log_bin_index                   |       |
| log_bin_trust_function_creators | OFF   |
| log_bin_use_v1_row_events       | OFF   |
| sql_log_bin                     | ON    |
+---------------------------------+-------+
[root@slave02 mysql]# vim /etc/my.cnf
log_bin                                                #去掉注释,开启二进制日志
[root@slave02 mysql]# service mysqld restart
mysql> show binary logs;                               #查看所有二进制日志文件
+-------------------+-----------+
| Log_name          | File_size |
+-------------------+-----------+
| slave2-bin.000001 |       168 |
| slave2-bin.000002 |       120 |
+-------------------+-----------+
mysql> show master status;                             #查看当前使用的二进制日志
+-------------------+----------+--------------+------------------+-------------------+
| File              | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+-------------------+----------+--------------+------------------+-------------------+
| slave2-bin.000002 |      120 |              |                  |                   |
+-------------------+----------+--------------+------------------+-------------------+
1 row in set (0.03 sec)
mysql> flush logs;                                     #刷新二进制日志
Query OK, 0 rows affected (0.17 sec)
[root@slave02 mysql]# mysqlbinlog mysql-bin.00001;     #显示二进制文件内容
mysql> show global status like '%Slow_queries%';       #查看慢查询日志数目

[Verwandte Empfehlungen]

1. Kostenloses MySQL-Online-Video-Tutorial

2. Neues MySQL-Handbuch-Tutorial

3. Dinge zum Datenbankdesign

Das obige ist der detaillierte Inhalt vonEinführung in die sechs Protokolltypen in MySQL. 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