2010-12-01 2 views
4

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

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

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

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

ответ

1

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

Пусть раб догонять хозяин означает раб 0 секунд позади хозяина.

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

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

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

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

+0

То, что я думал о том, как данные из старой схемы будут реплицироваться в новое, это не сработает! любая идея, как придумать процедуру, которая делает? – 2010-12-01 15:56:22

0

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

+0

Да, но старые данные не могут быть реплицированы в новую схему – 2010-12-01 16:08:20