Копирование данных из непроизводственной в производственную базу данных. - PullRequest
0 голосов
/ 13 апреля 2019

Мы работаем над проектом, в котором мы переходим от старой унаследованной системы к новой системе.

Поэтому, прежде чем приступить к работе, мы проведем сравнение данных между старой системной базой данных и базой данных, не являющейся продуктом (мы включили новуюпотенциальный поток производства в непроизводственной среде в течение ~ 2 недель)

Когда это будет удобно, мы планируем выпуск, в котором мы перейдем на новую систему и скопируем данные за 2 недели, которые у нас былив non-prod в реальной производственной системе.

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

Существуют ли какие-либо руководящие принципы / идеи для более надежной миграции такой системы на производство?или сценарии вставки базы данных - мой единственный выбор?

1 Ответ

0 голосов
/ 13 апреля 2019

Вы должны всегда делать резервные копии БД, прежде чем делать большие изменения, чтобы вы могли откатиться, если что-то пойдет не так.Пользователи должны ожидать время простоя системы, если вы объявите об этом раньше.

Я могу придумать два основных способа сделать это, хотя в зависимости от того, какую СУБД вы используете, у вас могут быть другие / лучшие варианты:

  1. Создайте дамп данных в исходной таблице, затем перезагрузите эту таблицу в новую базу данных.Затем запустите INSERT INTO SELECT, чтобы вставить строки старой таблицы в новую.

  2. Создайте дамп данных в исходной таблице, затем отредактируйте файл, чтобы удалить все операторы, которыеочистите таблицу, а затем непосредственно загрузите данные в новую таблицу.

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

Если вы можете сказать мне, какую СУБД вы используете, я мог бы рассмотреть другие варианты для вас,Если вы нервничаете, вы всегда можете подражать своей рабочей обстановке дома и делать пробежки.

...