Синхронизация с основной базой данных - PullRequest
1 голос
/ 29 июня 2009

У меня есть 2 базы данных, размещенные на другом сервере. Что лучше всего сделать, чтобы скопировать все содержимое базы данных master table в таблицу базы данных slave? Я не являюсь владельцем основной базы данных, но они готовы предоставить доступ. Перед тем, как данные из главной базы данных выводятся через RSS, и мой PHP-скрипт анализирует их для вставки на другой сервер, на котором расположена другая база данных, но из-за большого объема данных для обновления и вставки данных в удаленную базу данных требуется 24 часа, это, вероятно, связано с тем, что 2 базы данных накладных расходов. Итак, мы планируем создать скрипт, который загружает данные из основной базы данных, сохраняет локальную копию, а затем FTP на второй сервер и выгружает содержимое в базу данных. Это целесообразно, даже если размер файла CSV или SQL составляет около 30 МБ и продолжает расти? Каково лучшее решение для этого?

ПРИМЕЧАНИЕ: все сценарии от загрузки на FTP до вставки во вторую базу данных обрабатываются cron для автоматического обновления.

Ответы [ 2 ]

3 голосов
/ 29 июня 2009

Вы действительно должны учитывать репликацию MySQL Master-Slave. Это означает, что каждая вставка / обновление выполняется на подчиненном сервере. Главный сервер должен быть настроен на ведение (двоичного) журнала транзакций, который ведомый использует для отслеживания обновлений.

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

0 голосов
/ 29 июня 2009

О каком типе базы данных мы говорим? Вы смотрели в репликации?

...