This section describes the files in a MySQL source tree that are most relevent to binary log processing.
high-level binary logging mechanism for organizing events into
a sequence so that it becomes a binary log. Routines for
creating, writing, deleting binary log files.
log_event.cc: The low-level binary logging
mechanism for serializing of values into records. The
Log_event class and subclasses, for creating, writing,
reading, printing, and applying events of every event type.
Reading and writing here is at a low level, that is,
serializing values into records.
rpl_constants.h : Contains codes for
INCIDENT_EVENT incident types.
slave.cc : Contains some logic for
processing binary logs in a replication slave (the IO and SQL
rpl_injector.cc: Contains the injector
class that allows external insertions into the binary log.
This is used for cluster replication binary logging.
rpl_record.cc: Utilities for encoding and
decoding table rows into and out of the format used by row
rpl_tblmap.cc: Contains a mapping from
numbers to tables. The mapping is used by the row logging
system to identify tables.
rpl_utility.cc: Contains auxiliary classes
and functions used for
and also an auxiliary class for smart pointers
sql_binlog.cc : Code to execute
BINLOG statements (the base64-encoded
mysqlbinlog prints when it sees
sql_base.cc : The function
decide_logging_format() that determines
whether statements should be written to the binary log using
row-based or statement-based format.
mysqlbinlog.cc : The source for the
mysqlbinlog utility that reads binary log files and displays
them in text format. It shares some event-interpretation code
with the server.