Подготовка затруднительного положения базы данных

Я добавил $(inherited) в Другие флаги компоновщика, Пути поиска в заголовке, Пути поиска в структуре, Пути поиска в библиотеке в «Target -> Build Settings», решил проблему! Удачного кодирования!

10
задан Marc Gravell 25 June 2010 в 17:05
поделиться

5 ответов

При подготовке потребностей быть в синхронизации с производством, только до такой степени, когда Вы развертываете новые изменения.

Это или делает 4-ю среду под названием Тест, где новые обновления проверены. Мы называем наш UAT/Test, и это обычно - вторая база данных по серверу Подготовки.

Точная методология будет зависеть от того, как Вы сохраняете вещи в синхронизации. Вы на самом деле используете репликацию? Или просто резервное копирование/восстановление Напоминания для Подготовки?

5
ответ дан 3 December 2019 в 21:23
поделиться

Необходимо записать всем Вам изменения в dev базе данных как скрипты миграции SQL, которые запущены в определенном порядке. Не изменяйте структуру базы данных, если это не находится в сценарии. Не обновляйте, вставляйте или удаляйте любые строки, если это не находится в сценарии.

Идеально имейте способ отследить, какие скрипты были запущены против любой версии базы данных, которую Вы находите.

Затем можно обновить этап следующим образом.

  • Производственная база данных дампа
  • Заполните базу данных этапа с производственным дампом
  • Выполненные миграции на этапе
  • Проверьте, что миграция работала (модульные тесты, ручные проверки)

После того как все работает...

  • База данных напоминания дампа с командой mysqldump (поскольку это, возможно, изменилось), сохраняющий резервное копирование на сервере
  • Выполненные миграции на напоминании
  • Тестовая миграция работала над напоминанием
  • Пиво напитка (при наблюдении журналов ошибок)
9
ответ дан 3 December 2019 в 21:23
поделиться

Если можно позволить себе добавить ENV тестирования, можно хотеть рассмотреть это.

Иначе в основном необходимо сделать тестирование в dev ENV в какой-то степени, где Вы достаточно уверены относительно выпуска, что можно внести изменения схемы в ENV подготовки. Сделайте частые резервные копии и имейте хорошую процедуру отката так, чтобы, если что-то идет не так, как надо, когда Вы продвигаете изменения схемы в подготовке Вас, мог всегда откатывать.

Кроме того, хорошим инструментом для сравнения схемы базы данных является SqlCompare. Необходимо всегда использовать что-то вроде этого перед продвижением изменений схемы.

1
ответ дан 3 December 2019 в 21:23
поделиться

"Подготовка базы данных должна быть в синхронизации с Производством", Не верным.

Производственная Схема ("дизайн") находится в синхронизации с Подготовкой Схемы. Подготовка на первом месте, производство следует.

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

Подготовка "Чиста".

Производство создается из подготовки путем помещения реальных данных в чистую схему подготовки.

То, что делают некоторые люди, имеют две базы данных.

Сегодня № 1 является производством, № 2 подготавливает.

Завтра мы планируем сделать изменение в схеме. Мы обновляем № 2 до нового дизайна. Затем мы перемещаем данные от № 1 до № 2.

Затем когда мы сделаны движущиеся данные, мы переключаем прикладное программное обеспечение для использования № 2 в качестве производства.

Мы работаем с № 2 как производство, пока не время для следующего изменения.

1
ответ дан 3 December 2019 в 21:23
поделиться

Мы используем нашу базу данных подготовки только для тестирования нашего механизма развертывания. Это соответствует производству.

Мы создаем наши изменения в разработке и периодически развертываем их на QA. После того как мы готовы перейти к производству, мы агрегировали все изменения в один пакет выпуска. Тот пакет выпуска сначала тестируется на подготовке, и затем при отсутствии проблем развертывания, это продвинуто к производству.

1
ответ дан 3 December 2019 в 21:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: