Анонимные транзакции совершаются даже при GTID_MODE=ON
Я использую MySQL 5.7 с репликацией мастер-мастер GTID и испытываю странную ошибку.
Случайно один из моих мастеров прекратит репликацию с: "Невозможно реплицировать анонимную транзакцию, когда @@GLOBAL.GTID_MODE = ON"
Когда я проверяю, действительно есть анонимная запись в binlog, но неясно, как она туда попала, так как другой мастер также имеет GTID_MODE = ON, и это не должно позволять каким-либо анонимным транзакциям выполняться или проходить к Двоичный.
принудительное_произведение_конфигурации также включено, поэтому запросы, которые могут привести к анонимной транзакции, должны завершаться сбоем.
Это также только один запрос / транзакция. Предыдущий и следующий запросы в binlog всегда имеют GTID.
1 ответ
Я столкнулся с этой же проблемой. Первый раз, когда я увидел это, когда я обновился до MySQL 5.7.12.
У меня пока нет обходного пути / исправления. На какой версии MySQL вы?
Установка GTID_MODE в ON_PERMISSIVE помогла мне либо на MySQL 8.0.12 с той же ошибкой. Я оставил его на ON_PERMISSIVE, потому что не вижу в этом недостатка.
SET @@GLOBAL.GTID_MODE = ON_PERMISSIVE;