При восстановлении файла дампа Mysql возникает следующая ошибка.
ERROR 1665 (HY000): Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging.
Query OK, 0 rows affected (0.00 sec)
Конфигурация репликации приведена ниже.
my.cnf
server-id = 33
max_binlog_size=40M
log_bin=/MySql_5.5.8/log/my-bin
log-bin-index=/MySql_5.5.8/log/log/mysql_rpllg/my-bin.index
Скорее всего, вам нужно настроить его для смешанного формата, чтобы сервер мог решить.
binlog-format = СМЕШАННЫЙ
Формат оператора не всегда работает, особенно если оператор содержит такую переменную, как CURRENT_TIMESTAMP. Об этом можно прочитать здесь: https://mariadb.com/kb/en/mariadb/mariadb-documentation/log-files/binary-log/binary-log-formats/ - Кларк Вера
Во-первых, вы должны понять, что дает каждый формат, чтобы вы могли выбрать, какой из них вам больше подходит.
По строкам: Записывает события, которые влияют на отдельные строки таблицы.
На основе заявления: Записывает все операторы SQL, которые вносят изменения в данные или структуру таблицы.
Смешанный объединит оба мира, но MariaDB или MySQL предпочтут STATEMENT, а не ROW.
Ответ @Clark Vera имеет документация Больше подробностей.
На основе строк предназначены структуры, которые имеют несколько запросов, которые необходимо регистрировать и реплицировать, поэтому каждое изменение в каждой строке может регистрироваться и реплицироваться.
Журнал на основе операторов, с другой стороны, дает вам более краткий журнал и более эффективную репликацию базы данных большого объема, но может потерять некоторые данные, которые не считались важными или не меняли структуру.
После этого вы должны поддерживать на обоих серверах репликации один и тот же метод ведения журнала, и все будет в порядке.
Я рекомендую вам СМЕШАННЫЙ журнал, как сказал @Clark Vera, или вы можете просто установить его как ROW в своем сеансе, и когда вы перезапустите свой bd, это будет журнал на основе STATEMENT автоматически.
Попробуйте установить это в my.cnf, затем повторите попытку
binlog-format=STATEMENT