如何修复迁移? ActiveRecord :: Migrator.current_version和db:migrate:status是错误的

时间:2015-11-30 12:02:33

标签: ruby-on-rails ruby-on-rails-3 activerecord

我混合使用rake db:migrate并执行pg_restore(从备份恢复Postgres)。

这使我的数据库与db:migrate:status不同步。我的数据库中有一列在ActiveRecord::Migrator.current_version之前,所以当我尝试迁移时,我得到PG::DuplicateTable: ERROR: relation "foo_bar" already exists.

我如何协调这个?

1 个答案:

答案 0 :(得分:1)

您应该能够使用psql客户端并从命令行执行此操作。一个简单的方法是使用./bin/rails dbconsole

然后您可以使用sql直接插入值。

insert into schema_migrations(version) values ('20150508142945');
insert into schema_migrations(version) values ('20150508172938');

更改值以符合您的环境。