我使用Amazon RDS设置了一个数据库实例,并将我的Rails应用程序的生产环境指向database.yml文件。它看起来工作正常。什么是最好的检查方法?
在我的Capistrano配方中,我的数据库角色仍设置为我的app服务器。这只是针对capistrano任务正确吗?在Capistrano任务中,如果我在生产环境中迁移应用程序,它仍然应该正确地迁移我的RDS服务器吗?
run "rake db:migrate RAILS_ENV=production"
答案 0 :(得分:3)
你的假设是正确的。 :db
角色仅用于执行rake任务以运行迁移的位置。所以如果你有:
role :db, "ourmachine.com", :primary => true
它将仅在主计算机上执行rake RAILS_ENV=production db:migrate
命令。它在迁移任务期间使用database.yml作为服务器的位置。很多时候:db
与:app
相同,因为它可以运行迁移。