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

Ann*_*nna 7 database schema ruby-on-rails production-environment ruby-on-rails-4

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

RAILS_ENV=production rake db:create db:schema:load
RAILS_ENV=production rake db:create
Run Code Online (Sandbox Code Playgroud)

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

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

提前致谢.

And*_*eko 7

RAILS_ENV=production rake db:create会为production环境创建数据库,

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

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
Run Code Online (Sandbox Code Playgroud)

请查看此文件以获取有关该主题的完整信息.