Задавайте вопросы, мы ответим
Вы не зашли.
Здравстуйте.
У меня такая задачка.
Есть 2 севрера: А, Б. Между собой никак не связаны, на них работают базы А, Б соответственно.
Появился новый сервер В. Задача - сделать двустороннюю репликацию обеих баз на этот сервер. На данный момент настроена репликация Сервер А (База А) <=> Сервер В (База А)
Никак не могу сообразить, как развить ее до состояния
Сервер А (База А) <=> Сервер В (База А, База Б) <=> Сервер Б (База Б)
И возможно ли вообще такое? Читал, что у реплики может быть только один мастер, но может есть какое-то решение?
Если быть конкретнее, то провайдер запустил услугу геоДНС, позволяющую динамически распределять пользователей сайта между серверами. Есть 2 сайта, находящие на разных серверах и новый сервер, на который бы хотелось эти сайты "зазеркалить".
Неактивен
Мастер действительно может быть только один. Насколько я понимаю, у Вас
сайты совсем независимые, а потому можете, например, на В запустить два
экземпляра сервера (независимые каталоги, независимые порты, независимые
сокеты, etc). Тогда одна физическая машинка вполне сможет тянуть данные
с двух других физических машинок.
Для запуска удобно пользоваться mysqld_multi.
Неактивен
Огромное спасибо Не знал о такой возможности
Неактивен
Вопрос немножко не в тему, но... при использовании mysqld_multi могу ли я в данном случае указывать одну и ту же папку с базами? Ведь фактически изменения будут проводиться с одной конкретной базой каждым запущенным процессом
Неактивен
Если отключены движки InnoDB, то да. Иначе они будут пересекаться по
файликам ib*. Ну и надо понимать, что каждый instance при этом будет
«видеть» другую базу (в т.ч. и в show databases), и одновременное
обращение неизбежно приведет к потере данных. Гораздо безопаснее
сделать отдельные каталоги. Просто как предосторожность от людской
ошибки.
Неактивен