Replicas using row-based replication pt-table-checksum requires statement-based replication, and it sets "binlog_format=STATEMENT" on the master, but due to a MySQL limitation replicas do not honor this change. Therefore, checksums
will not replicate past any replicas using row-based replication
that are masters for further replicas.
The tool automatically checks the "binlog_format" on all servers.
See "--[no]check-binlog-format" .
So the error is expected if the slaves have MIXED format. I was going to mark this ticket as Not A Bug, but since this isn't the first time this message has caused confusion, we're obviously conveying things wrong, so I'll tag this for 2.1.9 and 2.2 and reword the error.
This is actually explained in the documentation:
Replicas using row-based replication
pt- table-checksum requires statement-based replication, and it sets
"binlog_ format= STATEMENT" on the master, but due to a MySQL
limitation replicas do not honor this change. Therefore, checksums
will not replicate past any replicas using row-based replication
that are masters for further replicas.
The tool automatically checks the "binlog_format" on all servers. check-binlog- format" .
See "--[no]
So the error is expected if the slaves have MIXED format. I was going to mark this ticket as Not A Bug, but since this isn't the first time this message has caused confusion, we're obviously conveying things wrong, so I'll tag this for 2.1.9 and 2.2 and reword the error.