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

Каков наилучший способ слияния базы данных разработки с производством?

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

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

Мой вопрос в том, есть ли у кого-то там рекомендация о том, как решить эту проблему? По существу, если бы мы могли просто опустить перечисленные ниже предметы (предполагая, что это безопасно?), Мы были бы совершенно счастливы продолжать использовать FileMerge. Но с этими элементами он чувствует, что мы расшифровываем самый длинный пароль в мире.

FYI WP Migrate DB (в том числе Pro) не способен на это. Мы говорили с авторами.

Спасибо.

Ниже приведен список записей базы данных, которые, как я думаю, могут быть опущены без каких-либо конфликтов в базе данных.  - _transient_random_seed  - active_plugins "a" значение (которое, я считаю, представляет количество активных плагинов)  - _site_transienty_timeout_browser  - recent_edited  - db_version  - cron  - _transient_timeout_feed_mod  - _transient_feed_mode  - rewrite_rules  - Версии плагинов  - _edit_locks

4b9b3361

Ответ 1

Я рассматриваю два возможных решения этой проблемы, однако оба имеют ограничение на требование php exec() на сервере разработки/промежуточного уровня. Поэтому хосты, такие как wpengine (которые мы используем), не будут работать с ними.

Если это не является для вас ограничением, проверьте https://revisr.io/ или http://versionpress.net/

Revisr является открытым исходным кодом, а VersionPress в настоящее время использует платную программу раннего доступа для поддержки разработки. Оба используют git для управления всеми аспектами синхронизации Wordpress с WP-Admin.

Ответ 2

Попробуйте сравнить данные MySQL с Red Gate. Я использую версию MSSQL и ее один из моих любимых инструментов разработки. Вы можете выбрать именно те таблицы и даже отдельные записи, которые вы хотите синхронизировать. Теперь о плохих новостях он работает только в Windows, и это не дешево. Если бы я не развивался на машине под Windows, я бы купил ее только для этой программы.

http://www.red-gate.com/products/mysql/mysql-data-compare/

Ответ 3

Я ищу то же самое. Ближайший я получил WP Stagecoach, который является одним из немногих вещей, которые фактически объединяют данные! Недостатком является создание сайта-разработчика с живого сайта, что означает, что вы должны делать все свои изменения там... затем вы можете объединиться с живым сайтом (данными и файлами).

Это означает, что вы не можете работать локально и должны делать это на серверах Stagecoach.

Кроме того, одна вещь, на которую следует обратить внимание, - Datahawk, нет временных рамок, когда они выпустят ее, но она из WP Migrate DB Pro ребята... Мне сказал разработчик, что он будет обрабатывать слияния, как это получается, хотя я не знаю.