2013-06-17 2 views
8

Есть ли способ сохранить две базы данных в синхронизации? У меня есть клиент, который запускает WordPress с MySQL. Есть ли способ сделать копию базы данных текущим состоянием и использовать ее для сервера разработки, а затем, когда изменения разработчика будут завершены, верните его на сайт в реальном времени?Как сохранить две базы данных MySQL в синхронизации?

Клиент может внести изменения в сайт, пока я буду работать над версией dev, и задаюсь вопросом, будут ли возникать конфликты слияния.

Если я импортирую обновленную базу данных через phpmyadmin, будет ли она обновляться только с самыми новыми изменениями или перезаписывать все?

+4

Репликация MySQL; но какие основные структурные изменения вы делаете в базе данных dev? –

+0

Вам не нужно иметь две базы данных, работающие с одним и тем же контентом. –

+0

@MarkBaker Это небольшой сайт, изменения, которые я добавляю, - это новые функции для администратора. Я больше всего беспокоюсь о новых изменениях, которые новее. В моих тестах до сих пор, похоже, обновлялись только те таблицы, которые изменились. Я просто буду осторожен, прежде чем начать работать с сайтом клиента. – Alex

ответ

6

Итак, я наконец нашел решение моей проблемы. Поскольку это было проблемой для WordPress, я нашел два плагина, которые отлично работали.

Бесплатно: Database Sync
Очень простой и удобный интерфейс.

Платный плагин $ 40-200: WP Migrate DB Pro
Гораздо более полированный и имеет возможность выбирать конкретные таблицы, которые вы хотите синхронизировать.

1

Существует ответ на проблему с дублированием here. Однако это только начало ваших трудностей. Если два человека самостоятельно вносят изменения в две копии одной базы данных, объединение двух неизбежно приведет к кошмарам. Короче говоря, да, будут конфликты слияния. То, что и что вы делаете с этим, будет зависеть от характера изменений, которые вы сделали каждый. Удачи!

+0

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

8

Вот краткое описание MySQL Replication by @Mark Baker или вы можете использовать MySQL Workbench Synchronization.

+1

А, похоже, это отличное решение. Исследуйте сейчас. – Alex

+0

Хотя вам нужно установить MySQL Workbench на свой компьютер. –

+0

MySQL Workbench Sync выглядит так, как будто он собирается сделать билет. Благодарю. – Alex

1

Другие современные (этот пост довольно старый) платные решения проблемы будут deevop и mergebot.

Mergebot - это плагины-саамы, которые помогают в сложных слияниях между различными базами данных разработки и производства, особенно для WordPress.

deevop - это более комплексное решение, обеспечивающее среду разработки, но имеющее множество возможностей для сложной синхронизации данных между фазами (исключая таблицы и т. Д.) Не только для WordPress, но и для других платформ.

Вы можете комбинировать оба и использовать deevop в качестве менеджера развертывания (один клик развернуть на/с производства), а затем использовать mergebot для слияния сложной базы данных.

+0

deevop выглядит интересно. Mergebot принадлежит тем же людям, которые сделали WP Migrate Pro (Delicious Brains) – Alex

Смежные вопросы