【问题标题】:How to configure development and deployment database for heroku?如何为heroku配置开发和部署数据库?
【发布时间】:2013-01-15 03:23:42
【问题描述】:

我今天开始玩 Heroku。 我对如何设置开发环境和部署有点困惑。

我正在开发一个 django 应用程序。不是 RoR 哈哈。

我应该使用 mysql 数据库进行开发并使用 postgres 进行部署吗?或者我应该把它们都保留为postgres?我应该记住什么?

部署数据库配置和运行本地测试有什么技巧或技巧吗?

谢谢:)

【问题讨论】:

    标签: mysql django postgresql heroku


    【解决方案1】:

    你可以做任何一种方式。要么有mysql/sqlite 用于开发,postgres 用于生产,要么有postgres 用于两者。取决于你对什么感到舒服。

    唯一需要确保的是分离开发和生产所需的相关宝石。

    mysql 用于 dev 和 postgres 用于 prod 时 Gemfile 的部分内容:

    group :production do
      gem 'pg', '0.11.0'
    end
    
    group :development, :test do
      gem 'mysql', '2.8.1'
      # gem 'sqlite3-ruby', :require => 'sqlite3'
    end
    

    【讨论】:

    • 啊,我明白了……现在,如果我要从事 Django 项目而不是 RoR 项目呢?
    • 根据我对Getting started with django on heroku page 的了解,关于在 dev 中使用方便的 db 类型的建议也适用于 Django。
    • 如果您在本地使用的数据库类型与在远程使用不同的数据库类型,最终您会遇到麻烦。最好从平价开始并保持它,而不是当你有点时切换。
    【解决方案2】:

    我认为您应该尝试使用与生产相同的数据库进行开发。它们不一定可以互换。但是,众所周知,由于 sqlite 的纯粹便利性,我自己忽略了这条规则;)

    【讨论】:

      【解决方案3】:

      Heroku 建议尽可能在本地使用相同的设置:https://devcenter.heroku.com/articles/heroku-postgresql#local-setup

      尽管 ORM 抽象了大部分细节,但让开发/生产平价仍然是一个好主意,并且当您想要下载生产应用的 pg_dump 以供本地使用时会有所帮助。

      【讨论】:

        猜你喜欢
        • 2014-03-06
        • 2013-06-06
        • 2015-03-08
        • 2011-07-19
        • 2016-02-27
        • 2021-04-24
        • 1970-01-01
        • 2012-02-20
        • 2019-06-24
        相关资源
        最近更新 更多