Подтвердить что ты не робот

Полная полная репликация базы данных MySQL? Идеи? Что делают люди?

В настоящее время у меня есть два Linux-сервера, на которых запущен MySQL, один из которых сидит на стойке рядом со мной под каналом загрузки 10 Мбит/с (главный сервер) и еще несколько миль за три канала загрузки (зеркало 3 Мбит/с)).

Я хочу, чтобы можно было реплицировать данные на обоих серверах непрерывно, но столкнулось с несколькими препятствиями. Один из них, в соответствии с MySQL master/slave конфигурациями, время от времени, некоторые заявления drop (!), Что означает; некоторые пользователи, входящие в зеркальный URL, не видят, что данные, которые я знаю, находятся на главном сервере, и наоборот. Скажите, что это происходит в значимом блоке данных один раз в месяц, поэтому я могу жить с ним и считать его проблемой "потерянного пакета" (то есть, бог знает, но мы компенсируем).

Другая важная (и раздражающая) повторяющаяся проблема заключается в том, что, когда по какой-то причине мы делаем крупную загрузку или обновление (или перезагрузку) на одном конце и должны sever, тогда LOAD DATA FROM MASTER не работает, и мне приходится вручную сбрасывать с одного конца и загружать с другой, довольно сложная задача, в настоящее время перемещающая данные в формате .5 ТБ.

Есть ли программное обеспечение для этого? Я знаю, что MySQL ( "корпорация" ) предлагает это как ОЧЕНЬ дорогой сервис (полная репликация базы данных). Что делают люди там? Как он структурирован, мы запускаем автоматический переход на другой ресурс, где, если один сервер не работает, тогда основной URL-адрес просто переходит на другой сервер.

4b9b3361

Ответ 1

Мы в Percona предлагаем бесплатные инструменты для обнаружения расхождений между мастером и сервером и их синхронизацию путем повторного применения минимальных изменений.

Ответ 2

GoldenGate - очень хорошее решение, но, вероятно, так же дорого, как и репликатор MySQL.

Он в основном обрабатывает журнал и применяет изменения в зависимости от того, что было совершено. Они поддерживают двунаправленную репликацию (сложную задачу) и репликацию между гетерогенными системами.

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

Ответ 3

Я никогда не видел сброшенных инструкций, но есть ошибка, когда проблемы с сетью могут вызвать повреждение журналов реестров. Убедитесь, что вы не запускаете mysql без этого исправления.

Документируется в 5.0.56, 5.1.24 и 6.0.5 списках изменений следующим образом:

   Network timeouts between the master and the slave could result
   in corruption of the relay log.

http://bugs.mysql.com/bug.php?id=26489