如何切换Rails应用程序中使用的数据库?

时间:2013-06-07 14:35:13

标签: sql ruby-on-rails ruby mongodb

我有一个基于Devise cancan回购的应用程序。目前它使用SQLite3作为其数据库。

我想知道有人会如何将系统更改为MongoDB或SQL数据库?

而且,如果我这样做,它会在本地使用应用程序时产生问题吗?

2 个答案:

答案 0 :(得分:3)

安装并配置另一个数据库服务器,然后编辑config/database.yml文件以指向它。您还需要在gem文件中包含所选适配器的相关gem:

# database.yml
development:
  adapter: postgresql
  database: my_database
  host: localhost
  username: username
  password: password

# gemfile
gem 'pg'

答案 1 :(得分:0)

您可以轻松地更改为MySQL或PostgreSQL。

更改database.yml文件,为数据库创建并运行迁移。如果要移动现有数据,可以将其导出到SQL文件并导入,或者有宝石​​为您执行此操作。

对于PostgreSQL,您的database.yml将如下所示。

development:
  adapter: postgresql
  encoding: unicode
  database: app_development
  pool: 5
  username:
  password:

不要忘记将pgmysql2 gem添加到您的Gemfile中。

对于MongoDB,您可以使用Mongoid,它与Acive Record不同。

相关问题