The difference between rake db:migrate and rake db:reset is pretty clear to me. The thing which I don't understand is how rake db:schema:load is different from the former two. Just to be sure that I am on the same page: rake db:migrate - Runs the migrations which haven't been run yet. rake db:reset - Clears the database (presumably does a rake db:drop + rake db:create + rake db:migrate) and runs m