Size: a a a

2018 May 11

ls

løst søul in ru_mysql
Sveta Smirnova
с его SHOW MASTER STATUS;
Повторил снова. эффект тот же. Когда я изменяю gtid_mode на "B" - ротируется журнал, и ставится стартовая позиция, При запуске реплики на на "С" все стартует, журнал и позиция подтягивается корректно. Далее я делаю START SLAVE на "B", и на C реплика падает
источник

SS

Sveta Smirnova in ru_mysql
>  Когда я изменяю gtid_mode на "B" - ротируется журнал, и ставится стартовая позиция,

Что значит ротируется журнал? Старые же никуда не деваются. Ну и нужно, чтобы С был синхронизирован с В. Правильно делать: Делаем бэкап на А, восстанавливаем бэкап на В и пока ничего туда не пишем. Зато делаем SHOW MASTER STATUS и записываем название лога и позицию. Восстанавливаем бэкап на С, стартуем его с позиций, записанных на предыдущем шаге. Далее делаем с В что хотим (но логов не удаляем)
источник

ls

løst søul in ru_mysql
Да, они не деваются никуда, но они синхронны, зачем мне разливать бекап?( Перед тем как это все начать, я останавливаю B, жду пока все применится, и дальше начинаю свои грязные дела
источник

SS

Sveta Smirnova in ru_mysql
Ну я вижу, что ошибка в IO thread о том, что слейв каких-то логов прочитать не может. Это, как правило, означают либо ошибки с настройкой, либо проблемы соединения с мастером. Я написала как делать правильно.

Ну либо, если изначально было А -> С. Останавливаем слейв на С. Делаем бэкап, восстанавливаем его на В. Стартуем mysqld на В с выключенной репликацией, записываем его позиции из SHOW MASTER STATUS;, стартуем репликацию с А на В. Затем переключаем С на В, используя записанные позиции, удостоверяемся, что всё работает и начинаем делать GTID
источник

ls

løst søul in ru_mysql
Осталось только понять каких именно... Потому что когда я делаю gtid  - сервера синхронны, и при поднятии gtid_mode ротируется журнал бинлога, и он начинается со стартовой позиции. Т.е. слейв должен читать логи уже с пустого журнала...
источник

SS

Sveta Smirnova in ru_mysql
Я же написала с каких именно
источник

SS

Sveta Smirnova in ru_mysql
В. Стартуем mysqld на В с выключенной репликацией, записываем его позиции из SHOW MASTER STATUS;,
источник

SS

Sveta Smirnova in ru_mysql
вот с этих позиций
источник

ls

løst søul in ru_mysql
нет, я имел ввиду не позицию, какие именно ошибки там могут быть
источник

ls

løst søul in ru_mysql
сейчас ещё раз error_log посмотрю...
источник

SS

Sveta Smirnova in ru_mysql
хорошая мысль =)
источник

ls

løst søul in ru_mysql
2018-05-11T13:00:28.512894Z 4216617 [Warning] Slave SQL for channel '': If a crash happens this configuration does not guarantee that the relay log info will be consistent, Error_code: 0
2018-05-11T13:00:28.515312Z 4216616 [Warning] GTID_LOG_EVENT or ANONYMOUS_GTID_LOG_EVENT is not expected in an event stream after a GTID_LOG_EVENT or an ANONYMOUS_GTID_LOG_EVENT.
2018-05-11T13:00:28.515322Z 4216616 [Warning] An unexpected event sequence was detected by the IO thread while queuing the event received from master 'mysql-bin.009721' binary log file, at position 154.


ошибка на слейве, когда падает io_thread
источник

SS

Sveta Smirnova in ru_mysql
нужно посмотреть что в файле 'mysql-bin.009721' binary log file, at position 154.
источник

ls

løst søul in ru_mysql
mysql-bin.009721  154  Anonymous_Gtid  220  219  SET @@SESSION.GTID_NEXT= 'ANONYMOUS'
источник

ls

løst søul in ru_mysql
ответ понятен...
источник

ls

løst søul in ru_mysql
он не ожидает anonimous т.к. gtid_mode = ON
источник

SS

Sveta Smirnova in ru_mysql
ага
источник

ls

løst søul in ru_mysql
Ну и соответственно с ON_PERMISSIVE его мастер все равно перезаписывает в бинлог по старой схеме... печаль
источник

ls

løst søul in ru_mysql
@svetsmirnova и я так понимаю, что без велосипеда это никак не обойдешь?)
источник

SS

Sveta Smirnova in ru_mysql
ну не знаю
источник