Как изменить мою базу данных с SQLite на MYSQL в Rails

Я знаю, что вам нужно изменить database.yml, но я не знаю, как его изменить и как загрузить MYSQL и весь этот джаз.

Ответ 1

Gemfile:

gem 'mysql2'

конфигурации/database.yml

development:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  database: db_name_here
  pool: 5
  username: root
  password:
  host: localhost

Командная строка:

bundle install
rake db:create
rake db:migrate

Конечно, MySQL необходимо установить.

Если вы создаете новый проект:

rails new app_name_here -d mysql

Ответ 2

Я столкнулся с той же проблемой при попытке использовать драгоценный камень mysql2 с Rails 3.0.9. Когда я запустил rake db:create после установки gem mysql2, он дал мне следующие предупреждения:

ПРЕДУПРЕЖДЕНИЕ: эта версия mysql2 (0.3.6) не поставляется с адаптером ActiveRecord в комплекте, поскольку теперь она является частью Rails 3.1

ВНИМАНИЕ: Пожалуйста, используйте версии 0.2.x, если вы планируете использовать его в Rails <= 3.0.x

Чтобы указать, что вы хотите использовать версии mysql2 версии 0.2.x, отредактируйте свой Gemfile так, чтобы

gem 'mysql2'

становится

gem 'mysql2', '~> 0.2.1'