MySQL 8.4 Release Notes
15.7.7.3 显示二进制日志事件语句
SHOW BINLOG EVENTS
[IN 'log_name']
[FROM pos]
[LIMIT [offset,] row_count]
显示二进制日志事件。 如果不指定'
,将显示第一个二进制日志。如果您不指定log_name
'SHOW BINLOG EVENTS
,则需要REPLICATION SLAVE
权限。
LIMIT
子句的语法与SELECT语句相同。请参阅Section 15.2.13, “SELECT Statement”。
Note
使用SHOW BINLOG EVENTS
语句时,不指定LIMIT
子句可能会启动一个时间和资源消耗的过程,因为服务器将返回客户端二进制日志的完整内容(包括服务器执行的所有语句,修改数据)。作为SHOW BINLOG EVENTS
的替代方案,可以使用mysqlbinlog工具将二进制日志保存到文本文件中,以便后续检查和分析。请参阅Section 6.6.9, “mysqlbinlog — Utility for Processing Binary Log Files”。
SHOW BINLOG EVENTS
语句将显示每个事件的以下字段:
-
Log_name
要显示的文件名称。
-
Pos
事件的位置。
-
Event_type
事件类型的标识符。
-
Server_id
事件的源服务器ID。
-
End_log_pos
事件的结束位置,等于
Pos
加上事件的大小。 -
Info
事件类型的详细信息。该信息的格式取决于事件类型。
对于压缩的事务 payload,Transaction_payload_event
首先被打印为单个单元,然后它被解包,并将每个事件打印出来。
与设置用户和系统变量相关的事件不包括在SHOW BINLOG EVENTS
的输出中。要获取二进制日志的完整覆盖,请使用mysqlbinlog。
SHOW BINLOG EVENTS
不适用于relay日志文件。您可以使用SHOW RELAYLOG EVENTS
来实现这个目的。