MySQL Row-Based Replication – Disadvantages

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 ).

Disadvantages of Row based:
  • 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.

  • Huge updates or deletes will take more IOPS and more logs space.
  • The Row based replication consumes lot of disk space and network traffic.
References:

https://dev.mysql.com/doc/mysql-replication-excerpt/5.7/en/replication-sbr-rbr.html