Я планирую использовать настройку MySQL с одним главным сервером и несколькими подчиненными серверами.Я выполняю регулярное согласованное резервное копирование данных EBS на одном из подчиненных серверов (я всегда буду останавливать базу данных раньше и перезапускать ее после ее завершения).
Отработка отказа подчиненных устройств
Iотказ одного из ведомых, я запустил новый экземпляр и установил EBS на основе последнего снимка ведомого в качестве нового диска с данными.В этой ситуации мастер доступен постоянно.Вот что я должен сделать:
0) убедитесь, что сервер использует уникальный server_id 1) SLAVE STOP;
2) RESET SLAVE;
3) START SLAVE;
4)restart mysql?
Этого достаточно?
Отработка отказа мастера Из соображений простоты и согласованности я не хочу повышать квалификацию одного из рабов.Я предпочитаю создавать новый мастер с нуля.Проблема в том, что снимок сделан от ведомого устройства, и я хочу использовать его как мастер.Вот что я должен сделать после создания нового экземпляра с диском на основе снимка подчиненного устройства:
1) STOP SLAVE;
2) RESET MASTER;
3) перезапустить mysql
4) связать эластичный IP с новым ведущим БД (тот же IP был использован отказавшим ведущим), чтобы подчиненные смогли снова подключиться.
Правильна ли эта процедура?Что мне теперь делать с рабами?Рабы могут быть впереди мастера, потому что мастер был восстановлен из снимка, которому может быть несколько часов.Это проблема?Существует также возможность воссоздать все ведомые устройства из одного и того же снимка, который использовался для восстановления мастера.Тогда они будут на той же позиции, что и мастер.Но это может быть сложно и невозможно без простоя.Есть ли лучший способ, как это сделать?
Заранее большое спасибо!
Примечания: Я не против потерянных транзакций со времени последнего снимка.Я использую Mysql 5.1.41.