Для Ruby on Rails, как вы переключаетесь на новую и пустую БД с той же СУБД или другой СУБД? - PullRequest
1 голос
/ 25 сентября 2010

Если нет необходимости переносить данные, кажется, что мы можем просто отредактировать database.yml

development:
  adapter: mysql
  database: myapp_development
  host: localhost
  username: root
  password:
  encoding: utf8

1) чтобы использовать новую базу данных с 0 данными, просто измените 3-ю строку на:

database: myapp_development_02

, а затем сделать rake db:create и rake db:migrate, и теперь у нас есть совершенно новый БД с нулевыми данными?

2) если он указывал с помощью SQLite, мы можем просто изменить его на описание MySQL как верхнюю часть этого поста, а также сделать rake db:create и rake db:migrate, и теперь у нас есть совершенно новый БД для работать с MySQL?

3) В Rails 3 есть db / schema.rb. Может ли это использоваться вместо rake db:migrate, что потребует 30 миграций, если имеется 30 файлов миграции, но если используется schema.rb, то он может достичь схем базы данных за один шаг?

4) Я думаю, что мы можем создать другие development_02 и т. Д. В файле database.yml, указывающие на старую базу данных или указывающие на другую СУБД, но просто убедитесь, что мы работаем с

rails ... -e development_02 ...
  or 
rake ... RAILS_ENV=development_02

1 Ответ

1 голос
/ 25 сентября 2010
  1. Да
  2. Да
  3. Да. На самом деле, это предпочтительный способ, если у вас большая схема.
  4. Да. Но вам нужно будет добавить config / environment / development_02.rb
...