--- aliases: - RBR tags: - зрелость/🌱 date: - - 2024-06-02 zero-link: - "[[00 MySQL]]" parents: - "[[Репликация в MySQL]]" linked: - "[[Statement Based Replication (SBR)]]" --- От мастера к слейву отправляются только измененные строки, сам результат изменений. Основан на журнале [Row-based Binary Log](Журналы%20в%20MySQL.md#Row-based%20Binary%20Log). Есть три режима работы: - full - при изменении сохраняются все колонки (до изменения и после), даже если в них не было изменений. Потребляет много памяти. - noblob - работает как full, но не передает изменения BLOB и TEXT колонок - minimal - при изменении строки сохраняются только измененные колонки и колонки ПК **Плюсы:** - Детерминирован. Запрос выполняется на master, а slave получают уже результат - Бинарный формат **Минусы:** - Не человеко-читаемый - Есть утилита `mysqlbinlog -v`, которая позволяет читать журнал - При изменении одного поля у записи отправляется вся запись целиком - в mysql есть binlog_row_image, который решает эту проблему