Я нахожусь в процессе добавления нового ведомого устройства в реплицированную установку MySQL. Я предлагаю следующий процесс:
Должно ли это работать правильно? Или MySQL запутается, потому что раньше это был другой идентификатор сервера?
ОС: Ubuntu 10.10
Платформа виртуальной машины: VMWare 5
MySQL: Версия сервера: 5.1.49-1ubuntu8.1-log (Ubuntu)
Я не знаком с VMWare, но я знаком с выполнением этого процесса для произвольных логических томов. Во-первых, вы должны клонировать виртуальную машину таким образом, чтобы ваш моментальный снимок виртуальной машины копировал сервер в согласованном состоянии (например, LV Snap). Вам также необходимо иметь возможность получать текущие координаты репликации ведомого устройства, когда вы начинаете копирование. Из-за этого потребуется следующий механизм:
Как только это будет сделано и новый сервер будет построен из образа, вам нужно будет выполнить главный оператор CHANGE на подчиненном устройстве, чтобы обновить эти координаты binlog:
ИЗМЕНИТЬ МАСТЕРА НА MASTER_LOG_FILE = "$ {Relay_Master_Log_File из 2a}", MASTER_LOG_POS = $ {Exec_Master_Log_Pos из 2a};
Этот метод будет работать, например, со снапшотом LV. Некоторые инструменты, такие как hollandbackup, поддерживают этот стиль копирования LVM: http://wiki.hollandbackup.org/mysqllvm