MongoDB 托管选项现在 Heroku mLab 附加组件正在被删除

Posted

技术标签:

【中文标题】MongoDB 托管选项现在 Heroku mLab 附加组件正在被删除【英文标题】:MongoDB hosting options now that Heroku mLab add-on is being removed 【发布时间】:2020-11-01 18:45:03 【问题描述】:

我现在在 Heroku 上托管了一项服务,并且我正在使用 mLab 插件来确保部署的版本能够写入数据库等。我现在可以做什么?收到这封邮件后我很困惑:

mLab 团队已选择停止使用此插件。 mLab MongoDB 插件将于 2020 年 11 月 10 日从所有 Heroku 应用程序中删除。我们建议您在 2020 年 9 月 1 日之前通过仪表板或 CLI 自行删除 mLab MongoDB 插件。

有人有什么建议吗?我应该离开 Heroku 吗?如果使用 AWS 会更容易(不过我之前从未使用过 AWS)。

【问题讨论】:

您可以更改为 Mongo atlas 免费层。您不需要 Heroku 插件即可连接到 Atlas。 Object Rocket(由 Heroku 自己建议,有一个可笑的业余项目付费计划(每月最低 46 美元)。 【参考方案1】:

上面的回答非常简单——“您不需要插件即可使用 Atlas。– D. SM 17 小时前”所以请继续使用 Sandbox 免费套餐。

【讨论】:

实际上,Atlas 服务似乎也有一个免费层,存储空间为 512MB。他们还为 Atlas 的 Heroku 插件发布了迁移指南,我将试一试:docs.mlab.com/how-to-migrate-sandbox-heroku-addons-to-atlas 更新:我能够按照他们的迁移指南(非常完整且做得很好,顺便说一句)连接到 Atlas 的免费层,我的 Heroku 应用程序再次启动并运行! FWIW,我正在使用 Heroku 为我的 Rails 应用程序运行 errbit 服务器。唯一的问题是获取正确的连接 URI 以连接到新的 Atlas DB/集群以输入 Heroku 配置变量。您可以从 Atlas 集群上的“连接”按钮获取 URI,并在字符串中插入您的密码/dbname。 Exaclty,我目前正在使用 mongodb Atlas 和一个使用 docker 托管在 heroku 中的 API,并且工作完美。【参考方案2】:

mLab isn't the only MongoDB game in town:ObjectRocket for MongoDB addon 看起来是另一个简单的选择。

或者,如果您愿意,您可以继续使用 mLab,但不能通过插件。您只需将您的应用程序指向您单独管理的 mLab 数据库。

【讨论】:

ObjectRocket 是免费的吗?我看到的层具有最低成本的 2GB 2 46 美元/月 我不知道。我从来没有使用过它。我的观点是,除了 mLab 之外还有其他选择,仅仅因为他们正在拉他们的插件并不意味着你需要离开 Heroku。 我也在寻找与 Heroku 兼容的免费替代品,但似乎不存在。而且也没有办法将 mongoDB 直接安装到 Heroku dyno 上。无赖。 这是 46 美元/月的替代品,也是唯一的插件替代品。不是答案 @JonasPraem,这个问题不是关于 免费 的选择。只是一种选择。我确信旧的 mLab 插件也有付费计划。这绝对是一个答案。【参考方案3】:

mLab 被 MongoDB 收购,鼓励其用户并最终需要迁移到 MongoDB Atlas。

使用 Atlas 不需要附加组件,Atlas 提供免费层。我不熟悉 mLab 的成本,但我想根据使用情况,Atlas 可能比 mLab 更便宜或更贵。

您可以使用其他托管的 MongoDB 服务作为其他答案提到的。由于 MongoDB 许可证更改为 SSPL,其他服务现在需要与 MongoDB Inc. 协商单独的协议,以提供 MongoDB 数据库即服务。一些服务(例如 ObjectRocket)已经做到了这一点,并提供当前的 MongoDB 版本(在撰写本文时为 4.4);其他人没有并且仅限于 4.0 和更早版本。

【讨论】:

ObjectRocket 目前声称支持最新版本的 MongoDB。不是这样吗? 他们声称支持哪个版本,您认为哪个版本是最新的? 他们声称支持 4.2,我很确定那仍然是最新版本 好的,我稍微调整了措辞以不那么明确。 您不需要插件即可使用 Atlas。

以上是关于MongoDB 托管选项现在 Heroku mLab 附加组件正在被删除的主要内容,如果未能解决你的问题,请参考以下文章

如果我使用 Heroku 来托管我的 d.py 机器人,它可以在 mongodb 中写入并保存到我的数据库吗?

无法从 heroku 托管的 MEAN 应用程序访问 mLab 数据库

使用 mongoose 和 Fixie(Heroku 插件)连接到 mongodb

使用mongoose和Fixie(Heroku附加组件)连接到mongodb

ios - Heroku 和 MongoDb 上的自定义解析服务器错误 3080:JSON 文本没有以数组或对象开头,并且允许未设置片段的选项

以前部署到 Heroku 时可以工作的 KeystoneJS V4 应用程序现在停止工作 - MongoDB Atlas