To Nha Notes | April 12, 2022, 10:49 a.m.
I personally love Row based replication. They are faster and safer for a consistent data. They use a lower level Isolation level ( Read Committed ) than the statement based ( Repeatable-read ).
RBR can generate more data that must be logged. To replicate a DML statement (such as an UPDATE or DELETE statement), statement-based replication writes only the statement to the binary log. By contrast, row-based replication writes each changed row to the binary log. If the statement changes many rows, row-based replication may write significantly more data to the binary log; this is true even for statements that are rolled back. This also means that making and restoring a backup can require more time. In addition, the binary log is locked for a longer time to write the data, which may cause concurrency problems. Use binlog_row_image=minimal to reduce the disadvantage considerably.
Deterministic loadable functions that generate large BLOB values take longer to replicate with row-based replication than with statement-based replication. This is because the BLOB column value is logged, rather than the statement generating the data.
https://dev.mysql.com/doc/mysql-replication-excerpt/5.7/en/replication-sbr-rbr.html