У меня есть приложение Ruby on Rails с двумя активными средами, Stage
и Production
.Наша команда разработчиков использует Stage
, но мы хотели бы перенести наши данные на рабочий сервер по разным причинам.Однако в новой базе данных есть конфликтующие идентификаторы, так что это не так просто, как извлечь данные из одного места и вставить их в другое.Например, скажем, у нас есть таблица Widgets:
Widget:
id: 9836
name: "Staging widget"
parent_id: 9635
container_id: 533
Если приведенные выше данные являются одним из наших виджетов, мы не можем выполнить импорт, потому что уже есть виджет с ID 9836
и / илиуже существует контейнер с ID 533
, что означает, что нам нужно сканировать цепочку ассоциаций для создания новых контейнеров, прежде чем помещать в них виджеты.
Мы используем базы данных MySQL для обеих сред.Я думал о том, чтобы выполнить импорт и просто добавить 10 000 во все соответствующие столбцы, оканчивающиеся на _id
, так как это вывело бы нас за пределы конфликтующих границ, но это кажется плохим решением.инструменты, проекты или идеи, которые могут помочь мне решить эту проблему?