首页 文章

PostgreSQL本地和Heroku PostgreSQL版本

提问于
浏览
2

我即将开发一个应用程序,我将使用Heroku部署它 . 我的上一个应用程序遇到了开发和测试环境中的sqlite3以及 生产环境 中的postgres问题,我只想在所有环境中运行postgres数据库 . 因此,我去安装postgres .

但是,我遇到了这个Heroku页面(https://devcenter.heroku.com/articles/local-postgresql),该页面声明它使用PostgreSQL 8.3数据库用于共享服务器,PostgreSQL 9.1用于新配置的数据库 . 当然我想至少在最初使用共享服务器 . 所以,这导致我遇到一些问题 .

如果我决定安装postgres 8.3并使用它来开发和部署(以便我的数据库与共享服务器匹配),如果我需要增加数据库大小并最终运行postgres 9.1,我是否会遇到一个大问题?

如果我安装postgres 9.1并使用它来开发和部署,那么当我部署到postgres 8.3服务器时,我是否会遇到一个大问题?

我之前有一个庞大的项目,我希望能听到之前处理过这个问题的人,以便尽可能提前做好计划 . 任何和所有输入将不胜感激 .

2 回答

  • 2

    如果这是一个新的应用程序,您应该使用dev plan beta而不是8.3共享的应用程序 . 那个's likely to be out of beta before you'完成了一个大型项目 . 当旧的共享计划显然正在逐渐消失时,你几乎没有理由处理8.3的怪癖,2月份PostgreSQL 8.3本身就是due for deprecation . 我不建议任何人 Build 一个新的PostgreSQL应用程序,除了9.1以外的任何东西;与早期版本的软件相比,它修复了太多限制 .

  • 0

    是的,如果您的软件依赖于这两个数据库版本中不同的某些功能,则可能会出现问题 . 例如,当您使用9.1中存在的功能时,8.3中不存在该功能 .

    但是,通常升级(从较小的版本号到较大的版本号)都没有问题 . 你应该检查一下 .

    好的测试套件会有所帮助,只需在一个数据库上测试应用程序,然后在另一个数据库上测试

    规则1:用于测试的数据库必须与 生产环境 中使用的数据库(引擎,版本,操作系统)完全相同 - 否则您将无法说您测试了应用程序 .

    规则2:没有像“postgre”这样的东西 . 数据库名称是PostgreSQL或Postgres .

相关问题