Если вы хотите запустить определенную миграцию , выполните
$ rake db:migrate:up VERSION=20080906120000
Если вы хотите запустить миграцию несколько раз , выполните
# use the STEP parameter if you need to go more than one version back
$ rake db:migrate:redo STEP=3
Если вы хотите запустить одну миграцию несколько раз, выполните
# this is super useful
$ rake db:migrate:redo VERSION=20080906120000
(номер версии можно найти в имени файла вашей миграции)
Редактировать: Вы также можете просто переименовать файл миграции, например:
20151013131830_my_migration.rb
-> 20151013131831_my_migration.rb
Затем выполните миграцию в обычном режиме, это будет относиться к миграции как к новой (полезно, если вы хотите выполнить миграцию в удаленной среде (такой как промежуточная), над которой у вас меньше контроля.
Редактировать 2 : Вы также можете просто уничтожить запись миграции в базе данных. Например:
rails_c> q = "delete from schema_migrations where version = '20151013131830'"
rails_c> ActiveRecord::Base.connection.execute(q)
rake db:migrate
перезапустит метод up
ядерных миграций.