执行rake db时出错:在Heroku上进行迁移

时间:2012-09-13 19:19:59

标签: ruby heroku rake database-migration

做的时候

heroku run rake db:migrate

执行所有迁移,最后我总是得到以下消息:

/app/vendor/bundle/ruby/1.9.1/bin/rake: No such file or directory - pg_dump -i -s -x -O -f /app/db/structure.sql dan79p98fykovu

我无法在Heroku上将pg_dump添加到PATH。 怎么处理这个?

1 个答案:

答案 0 :(得分:50)

问题是rails在迁移完成后尝试转储新的structure.sql,并且由于pg_dump不存在而失败。为部署的应用程序生成新的structure.sql毫无意义,因此最好的解决方案是告诉rails不要。

编辑Rakefile并覆盖任务。在它的末尾添加以下行应该这样做:

Rake::Task["db:structure:dump"].clear if Rails.env.production?