2016-12-18 4 views
1

У меня есть круговой Мули-мастер настройка MySQL следующегомультимастерного положение репликации MySQL

    DB1 ------> DB2 ------> DB3 -- 
        |       | 
        ------------<--------------- 

Я инициализируется репликация на 3 дБ серверов на один и те же данные и одинаковый индексе мастера-позиции, если этот индекс позиции становится не -identical, это означало бы для факта, что 3 базы данных стали непоследовательными позже, учитывая, что за один раз записывается только один мастер?

ответ

1

Координаты двоичного журнала не имеют ничего общего с экземплярами, имеющими согласованные данные.

Вы можете записывать двоичные журналы в DB1 в течение нескольких недель, затем делать резервную копию и использовать ее для инициализации DB2. Затем через некоторое время возьмите резервную копию DB2 и используйте ее для инициализации DB3. После этого все три сервера будут иметь идентичные данные, но совсем разные двоичные файлы журналов и индексы.

Для управления репликацией вы можете использовать Global Transaction IDs (которые не являются бинарными координатами журнала).

В любом случае, это риск того, что данные будут синхронизированы независимо от того, как вы управляете репликацией. Вы можете запускать запросы, которые включают non-deterministic expressions. Вы могли бы turn off binary logging temporarily. Или журналы могут стать поврежденными, поскольку они передаются в реплики.

Если вы хотите проверить соответствие данных, используйте pt-table-checksum.

+0

Спасибо, действительно информативный –

Смежные вопросы