繁体   English   中英

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

[英]How do I switch the database used in a Rails application?

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

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

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

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

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

# gemfile
gem 'pg'

您可以轻松地更改为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不同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM