У меня есть приложение Rails, работающее над базой данных MySql.
Есть ли способ консолидировать миграции? Например:
скажем, у меня есть очень большая таблица с именем members
, и я создаю миграцию, чтобы добавить столбец name
в эту таблицу, позже я создаю другую миграцию, которая добавляет еще одно поле address
и добавляет индекс к полю address
.
когда я сейчас запущу миграцию, она изменит таблицу 3 раза: добавить name
, добавить address
и добавить index. и каждый раз команда alter table фактически создает новую таблицу, копирует в нее все данные и удаляет старую таблицу.
в моем случае таблица members
очень большая, более 10 миллионов записей, поэтому каждое изменение занимает несколько часов.
есть ли способ объединить изменения в один альтер?