【问题标题】:Managing 2 different database schemas in rails app在 Rails 应用程序中管理 2 个不同的数据库模式
【发布时间】:2013-08-17 05:15:38
【问题描述】:

我有一个 Rails 应用程序,用于连接到托管在亚马逊上的生产从属数据库。我想创建第二个数据库,它具有完全不同的架构,并将其保存在我的本地计算机上。原因是从我们使用的第三方导入数据,更好地组织并能够比访问他们的 api 更快地访问它。我的问题是我将如何设置第二个数据库?一起创建一个新的 Rails 应用程序会更好吗?如果我在我的 database.yml 中设置一个新环境和一个新数据库,我将如何为该数据库创建一个自定义架构等?

谢谢!

【问题讨论】:

标签: mysql ruby-on-rails ruby activerecord


【解决方案1】:

是否使用不同的 Rails 应用程序取决于两个应用程序之间有多少功能重叠(如果有两个应用程序)。

但是,如果您想处理来自同一个 Rails 应用程序的两个不同的数据库,以便您可以处理来自一个数据库的条目以在不同的数据库中进行更改,那是相当容易的。如果您搜索建立连接,则有许多示例,例如这里:https://web.archive.org/web/20160320192534/http://blog.nistu.de/2012/03/25/multi-database-setup-with-rails-and-rspec

基本上,您的应用程序有一个主要的默认数据库,然后通过在 database.yml 中以不同名称定义第二个数据库的配置来设置一个或多个模型以使用不同的数据库。然后,将参照不同数据库配置的建立连接调用放入模型定义中。

这里有一些用于管理多数据库配置中的迁移的选项:Using Rails Migration on different database than standard "production" or "development"

【讨论】:

    猜你喜欢
    • 2012-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多