Синхронизация баз данных
Я занимаюсь разработкой веб-приложения, в котором мне нужно поддерживать веб-сайт на локальных серверах с базой данных на самом компьютере, локальная база данных будет периодически меняться. Существует центральная база данных, через которую я должен получить доступ ко всем данным во всех остальные БД.
Проблема в том, что даже когда интернет-соединение отключено, локальный сервер будет обновлять локальную базу данных, но когда он восстанавливает интернет-соединение, ему приходится обновлять центральную базу данных локальными измененными данными.
Таблицы (я имею в виду схему базы данных, имена таблиц, все атрибуты) во всех БД одинаковы. Данные должны быть добавлены, если добавлены новые, должны быть удалены, если удалены, и должны быть изменены, если таковые имеются.
Я использую сервер MySQL в качестве базы данных, Apache Tomcat в качестве сервера и использую JSP, сервлеты для бизнес-логики.
1 ответ
Пожалуйста, посетите http://dev.mysql.com/doc/refman/5.1/en/replication-howto.html
Репликация Mysql может сделать эту работу, но есть несколько вещей, которые вы должны рассмотреть, например:
- количество данных, которые должны быть синхронизированы
- ОС, используемая на главном и подчиненном серверах
- из-за проблемы с интернет-соединением - почему вы отключаете интернет-соединение? одним из вариантов может быть запланированная работа (crontab)