Spec-Zone.ru › MySQL 8.4

7.4.4.1 Форматы двоичного протоколирования

Сервер использует несколько форматов протоколирования для записи информации в двоичный журнал:

  • Возможности репликации в MySQL первоначально основывались на распространении SQL-запросов от источника к реплике. Это называется протоколированием на основе операторов. Вы можете заставить использовать этот формат, запустив сервер с --binlog-format=STATEMENT.

  • В протоколировании на основе строк (по умолчанию) источник записывает события в двоичный журнал, которые указывают, как влияют изменения на отдельные строки таблиц. Вы можете заставить сервер использовать протоколирование на основе строк, запустив его с --binlog-format=ROW.

  • Также доступен третий вариант: смешанное протоколирование. При смешанном протоколировании протоколирование на основе операторов используется по умолчанию, но режим протоколирования автоматически переключается на протоколирование на основе строк в определенных случаях, как описано ниже. Вы можете явно заставить MySQL использовать смешанное протоколирование, запустив mysqld с опцией --binlog-format=MIXED.

Формат протоколирования также может быть установлен или ограничен используемым хранилищем данных. Это помогает устранить проблемы при репликации определенных операторов между источником и репликой, использующими разные хранилища данных.

При репликации на основе операторов могут возникнуть проблемы с реплицированием недетерминированных операторов. При определении того, является ли данный оператор безопасным для репликации на основе операторов, MySQL определяет, может ли он гарантировать, что оператор может быть реплицирован с помощью протоколирования на основе операторов. Если MySQL не может гарантировать это, он помечает оператор как потенциально небезопасный и выдает предупреждение Оператор может быть небезопасным для протоколирования в формате операторов.

Вы можете избежать этих проблем, используя репликацию MySQL на основе строк.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/binary-log-formats.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API