Заказы синхронизации Magento на промежуточных и живых базах данных

Так что у меня есть сайт Staging and Live Magento. Я хочу сделать такие вещи, как создание тем, установка расширений, обновлений Magento и т. Д. На промежуточном сайте, а затем перенести их на действующий сервер.

Проблема в том, что пока я работаю над изменениями, на сайт поступают живые заказы. Поэтому я не могу просто скопировать файлы и базу данных на работающий сервер. Я буду пропускать заказы и клиентов, и все мои номера заказов будут испорчены.

Итак, как правильно синхронизировать обе базы данных? Что-то вроде обновления или установки расширения Magento внесет изменения в базу данных, поэтому я не могу просто использовать живую базу данных для обоих.

Я видел, как кто-то упоминал об использовании GIT / GitHub, не уверен, как он работает, но все ли вы будете помещать только новые изменения базы данных на действующий сервер вместе с измененными файлами?

Спасибо

0

Решение

Вам не нужно синхронизировать промежуточные и производственные базы данных, когда речь идет о переменных данных, таких как клиенты, заказы и т. Д.

Вместо этого у вас должна быть база данных разработчика (без журналов, клиентов, заказов и т. Д.) Из производства, которую вы используете при подготовке. Вы можете разместить все тестовые заказы, которые хотите повторно заполнить этими данными. Это также означает, что у вас нет риска по электронной почте живым клиентам из вашей промежуточной базы данных.

С точки зрения обновления базы данных, дизайна и т. Д. Вам необходимо отслеживать две области изменений:

  1. Изменения файлов (шаблоны, CSS, Javascript, модули, обновленный код ядра Magento …)
  2. Изменения конфигурации (база данных)

Для изменения файлов вы должны использовать систему контроля версий (Git, Subversion и т. Д.) И отслеживать ваши изменения по мере их внесения. Когда они будут протестированы и готовы к развертыванию, вы можете объединить их в master.

Что касается изменений базы данных, то единственный способ убедиться, что при развертывании кода в рабочей среде все просто переключается, — это использовать сценарии установки / обновления Magento для добавления своей конфигурации в базу данных. Если вы не использовали их раньше, это, по сути, файл PHP и номер версии в вашем config.xml для модуля, который вы добавили, добавьте новый скрипт установки и скажите ему, что вы хотите изменить, будь то создание новых таблиц или данных, сохранение или изменение значений конфигурации и т. д.

Основные преимущества отслеживания всех ваших изменений конфигурации в сценариях установщика (я имею в виду все это, буквально), это:

  1. При развертывании исходного кода и переиндексации, Magento обновит вашу производственную базу данных всеми новыми необходимыми конфигурациями
  2. Вам не нужно беспокоиться об управлении изменениями базы данных отдельно
  3. Все версии — у каждого приращения версии модуля может быть новый скрипт установки, чтобы вы могли видеть, что со временем изменилось в модуле.

Для дополнительной информации, Алан Сторм имеет отличную статью о них.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]