--- 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 - при изменении строки сохраняются только измененные колонки и колонки ПК **Плюсы:** - Детерминирован. - Бинарный формат - Запрос выполняется на мастер ноде, а слейвы получают уже результат **Минусы:** - Не человеко-читаемый - Есть утилита `mysqlbinlog -v`, которая позволяет читать журнал - При изменении одного поля у записи отправляется вся запись целиком - в mysql есть binlog_row_image, который решает эту проблему