digital-garden/_inbox/Row Based Replication (RBR).md
2024-06-13 21:01:37 +03:00

1.6 KiB
Raw Blame History

aliases tags date zero-link parents linked
RBR
зрелость/🌱
2024-06-02
00 MySQL
Репликация в MySQL
Statement Based Replication (SBR)

От мастера к слейву отправляются только измененные строки, сам результат изменений. Основан на журнале Row-based Binary Log.

Есть три режима работы:

  • full - при изменении сохраняются все колонки (до изменения и после), даже если в них не было изменений. Потребляет много памяти.
  • noblob - работает как full, но не передает изменения BLOB и TEXT колонок
  • minimal - при изменении строки сохраняются только измененные колонки и колонки ПК

Плюсы:

  • Детерминирован.
  • Бинарный формат
  • Запрос выполняется на мастер ноде, а слейвы получают уже результат

Минусы:

  • Не человеко-читаемый
    • Есть утилита mysqlbinlog -v, которая позволяет читать журнал
  • При изменении одного поля у записи отправляется вся запись целиком
    • в mysql есть binlog_row_image, который решает эту проблему