COM_BINLOG_DUMP
You are viewing an old version of this article. View
the current version here.
This is a command the slave sends to the master after COM_REGISTER_SLAVE.
The master server can send the binlog events.
Payload is
- uint<1> command (COM_BINLOG_DUMP = 0x12)
- uint<4> The requested binlog position
- uint<2> Flags
- uint<4> Slave server_id
- string<EOF> The requested binlog file name
Note
- Flags is usually 0. It can be set to BINLOG_SEND_ANNOTATE_ROWS_EVENT (0x02)
if the slave server wants to receive the MariaDB 10 ANNOTATE_ROWS events.
- Requested binlog position can be 4 when registering to master server for the very first time
or when requesting events from a particular binlog file from the beginning of it. - The requested binlog file can empty when registering for the very first time if master log file is unknown
or with GTID registration (not required).
When replication resumes or it is restarted (STOP SLAVE; START SLAVE) the slave server always
sends the latest binlog file name and position even if GTID registration is in place.
Example of COM_BINLOG_DUMP
1b 00 00 00 12 34 06 00 00 02 00 75 27 00 00 6d .....4.....u'..m 79 73 71 6c 2d 62 69 6e 2e 30 30 30 30 33 34 ysql-bin.000034
After 4 bytes network protocol header we can see:
- command [1] = 12
- requested binlog position [4] = 34 06 00 00 => 00 00 06 34 = 1588
- flags [2] = 02 00 => 2 = BINLOG_SEND_ANNOTATE_ROWS_EVENT
- binlog file[n] = mysql-bin.000034
Comments
Comments loading...
Content reproduced on this site is the property of its respective owners,
and this content is not reviewed in advance by MariaDB. The views, information and opinions
expressed by this content do not necessarily represent those of MariaDB or any other party.