Назад | Перейти на главную страницу

Синхронизация между базами данных MySQL на разных хостах

Я хочу решить проблему репликации / синхронизации данных между двумя экземплярами сервера MySQL. Оба они имеют одинаковую структуру базы данных (базы данных, таблицы, столбцы, все ...), но каждый из них имеет разные приоритеты, когда дело доходит до хранения данных. Один получает данные с веб-сайта, который является интерфейсом в решении, а другой получает данные с серверной части. Это своего рода балансировка нагрузки, потому что бэкэнд не очень хорошо спроектирован, и его соединение прерывается, если он не может записать свои данные в течение нескольких секунд.

Чтобы быть более точным, я должен упомянуть, что бэкэнд и фронтенд не записывают в одни и те же таблицы. В настоящее время синхронизация между этими базами данных управляется триггерами и хранимыми процедурами, и это следует изменить на более стабильное решение.
Я нашел статью в сети ( http://www.howtoforge.com/mysql_database_replication ) это выглядит многообещающе, но возникает вопрос: можно ли сделать оба сервера ведущими и ведомыми одновременно? Было бы прекрасно, если бы да. Кстати: если да, я могу спросить, как это делается (настройки для главного и подчиненного сервера на каждой конфигурации серверов?).

Я хотел бы спросить, есть ли другие решения для такого рода репликации.

Спасибо

Кластер Percona XtraDB предназначен именно для этого случая использования.

  • Операция записи в любую, чтения из любой.
  • Синхронная репликация с несколькими мастерами.
  • На основе Галера проект.
  • Полный, современный, высокопроизводительный Mysql Fork.
  • Минимальные изменения в коде базы данных вашего приложения (в отличие от Mysql кластер).
  • Полностью совместим с API вашего дистрибутива (недавнего) Mysql. Просто удалите существующий Mysql и установите XDC; Работа с одним узлом такая же, как и в Vanilla Mysql.
  • Свободно

Обязательно ознакомьтесь с Ограничения слишком. Для конфигурации кластера с высокой доступностью вам потребуется минимум 3 узла.

Вот примеры использования AWS EC2 и обработка замки крайние .

Вы можете попробовать с репликация мастер-мастер.

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

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