5

Tôi đã tìm kiếm cách tạo db trong môi trường sản xuất cho đường ray và nhận được 2 câu trả lời. Bây giờ tôi đang bối rối với những câu trả lời đó.Tạo DB trong môi trường sản xuất trong đường ray

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

Sự khác biệt giữa hai điều này là gì? Lược đồ này có ý nghĩa gì?

Tại sao chúng ta cần db:schema:load?

Xin cảm ơn trước.

+0

Bản sao có thể có của [Sự khác biệt giữa db rake: di chuyển db: đặt lại và db: giản đồ: tải] (http://stackoverflow.com/questions/10301794/difference-between-rake-dbmigrate-dbreset-and-dbschemaload) – mlt

Trả lời

6

RAILS_ENV=production rake db:create sẽ tạo ra cơ sở dữ liệu cho môi trường production,

trong khi

RAILS_ENV=production rake db:schema:load sẽ tạo ra bảng và các cột trong cơ sở dữ liệu theo các schema.rb cho môi trường 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 

Hãy xem this file để biết thông tin đầy đủ về chủ đề.

Các vấn đề liên quan