zl程序教程

您现在的位置是:首页 >  其它

当前栏目

show binlog events

Binlog show Events
2023-09-27 14:26:37 时间

用于在二进制日志中显示事件。如果您不指定’log_name’,则显示第一个二进制日志。
LIMIT子句和SELECT语句具有相同的语法。

实验:


mysql show binlog events\G;

*************************** 1. row ***************************

 Log_name: mysql-bin.000001

 Pos: 4

 Event_type: Format_desc

 Server_id: 1

End_log_pos: 107

 Info: Server ver: 5.5.49-log, Binlog ver: 4

*************************** 2. row ***************************

 Log_name: mysql-bin.000001

 Pos: 107

 Event_type: Query

 Server_id: 1

End_log_pos: 276

 Info: grant replication slave,replication client on *.* 

to repl@192.168.% identified by beijing

*************************** 3. row ***************************

 Log_name: mysql-bin.000001

 Pos: 276

 Event_type: Rotate

 Server_id: 1

End_log_pos: 319

 Info: mysql-bin.000002;pos=4

3 rows in set (0.00 sec)

找到当前binlog,因为之前的语句中有flush logs,所以执行的命令记录在上一个日志中

mysql show master status;

+------------------+----------+--------------+------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+

| mysql-bin.000007 | 107 | | |

+------------------+----------+--------------+------------------+

1 row in set (0.00 sec)

mysql show binlog events in mysql-bin.000006\G;

......

 Log_name: mysql-bin.000006

 Pos: 623

 Event_type: Query

 Server_id: 1

End_log_pos: 708

 Info: create database miles

*************************** 7. row ***************************

 Log_name: mysql-bin.000006

 Pos: 708

 Event_type: Query

 Server_id: 1

End_log_pos: 800

 Info: use `miles`; create table tbl (test TEXT)

*************************** 8. row ***************************

 Log_name: mysql-bin.000006

 Pos: 800

 Event_type: Query

 Server_id: 1

End_log_pos: 869

 Info: BEGIN

*************************** 9. row ***************************

 Log_name: mysql-bin.000006

 Pos: 869

 Event_type: Query

 Server_id: 1

End_log_pos: 971

 Info: use `miles`; insert into tbl values ("hello,Miles")

*************************** 10. row ***************************

 Log_name: mysql-bin.000006

 Pos: 971

 Event_type: Xid

 Server_id: 1

End_log_pos: 998

 Info: COMMIT /* xid=1992 */

*************************** 11. row ***************************

 Log_name: mysql-bin.000006

 Pos: 998

 Event_type: Rotate

 Server_id: 1

End_log_pos: 1041

 Info: mysql-bin.000007;pos=4

11 rows in set (0.00 sec)

级联slave的延迟计算和query event exe time获取方法 一、级联时间计算方式 比如A- B- C那么C的延迟是计算B还是A的。因为Event的中timestamp没变,但是C计算时间差值却是以B为准。如果时钟同步的情况下,其实基本可以考虑为A的。计算方法可以参考我的《深入理解MySQL主从原理》专栏 逻辑如下: 级联中的Event依然是主库的时间,因此其延迟还是相对主库而言。
深入理解MySQL 5.7 GTID系列(七)binlog_gtid_simple_recovery参数的影响总结 想了想还是专门开了一节来总结这个问题: 5.7.6以下中默认 simplified_binlog_gtid_recovery=flase 5.7.6以上中默认 binlog_gtid_simple_recovery=true 默认值就是最合理的设置。
深入理解MySQL 5.7 GTID系列(四):mysql.gtid_executed&PREVIOUS GTID EVENT 之所以把MySQL.GTID_EXECUTED表的作用和PREVIOUS GTID EVENT的改变放到一起进行描述是因为它们后面文章探讨的基础。这部分使用到了我自己使用C语言写的原生BINLOG解析工具INFOBIN。