Использование репликации MYSQL для ускорения изменений схемы и оптимизации таблиц - PullRequest
4 голосов
/ 01 декабря 2010

Я слышал, что многие люди используют схемы «ведущий-ведомый», помогая сократить время, затрачиваемое на изменение схем, с помощью репликации для настройки нового временного мастера, затем остановки перемещения и смены ролей перед повторным запуском.Я нашел пример (ниже), найденный на переполнение стека.

  1. Настройка ведомого устройства
  2. Остановка репликации.
  3. Настройка ALTER на ведомом устройстве
  4. Пусть подчиненное устройство догонит мастер
  5. поменяйте местами master и slave, чтобы slave стал рабочим сервером с измененной структурой и минимальным временем простоя

Это все очень хорошо, однако я не понимаю, шаг 4, мне это не понятно.

Интересно, кто-нибудь может объяснить, пожалуйста, процедуру яснее.

Ответы [ 2 ]

1 голос
/ 01 декабря 2010

Пусть раб догонит хозяина

Пусть ведомый догонит мастера, что означает, что раб на 0 секунд позади мастера.

Это означает, что если репликация остановилась в какой-то момент (чтобы вы могли изменить таблицу),
он зарегистрирует время последней репликации.

Когда репликация возобновится,
он сравнивает текущую запись на ведущем устройстве с последним временем репликации на ведомом устройстве.

Однако, процедуры кажутся недостатком .
Вы не можете изменить раба и
ожидаемая схема в обновленном подчиненном устройстве совпадает с master .

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

0 голосов
/ 01 декабря 2010

seconds_behind_master должно быть 0.

...