在rails中的生产环境中创建DB

时间:2014-09-02 04:57:01

标签: ruby-on-rails database ruby-on-rails-4 schema production-environment

我已经搜索了如何在生产环境中为rails创建数据库并获得2个答案。现在我对这些答案感到困惑。

RAILS_ENV=production rake db:create db:schema:load
RAILS_ENV=production rake db:create

这两者有什么区别?这个架构意味着什么?

为什么我们需要db:schema:load

提前致谢。

1 个答案:

答案 0 :(得分:7)

RAILS_ENV=production rake db:create将为production环境

创建数据库

,而

RAILS_ENV=production rake db:schema:load将根据schema.rb环境的production在数据库中创建表和列。

task :load => [:environment, :load_config] do
  ActiveRecord::Tasks::DatabaseTasks.load_schema_current(:ruby, ENV['SCHEMA'])
end

task :create => [:load_config] do
  ActiveRecord::Tasks::DatabaseTasks.create_current
end

请查看this file以获取有关该主题的完整信息。