gpt4 book ai didi

mongodb - 如何将我的本地默认 Meteor Mongo 数据库的数据推送到 Heroku mLabs 以部署在 Heroku 上的应用程序?

转载 作者:可可西里 更新时间:2023-11-01 10:03:04 27 4
gpt4 key购买 nike

我使用随 Meteor 安装的默认 Mongo 数据库在我的本地开发 Meteor 环境中设置我的应用程序数据。我的应用程序已准备好在 Heroku 上部署,但我打算将我的数据与其一起使用(类似于 Rails“迁移”)。

在 Heroku 中,我添加了 mLabs 插件并设置了“MONGO_URL”变量。如何将我的本地应用程序数据库推送到我的 mLabs 实例以在 Heroku 上部署?

最佳答案

这是对我有用的。

<强>1。转储我的本地 mongo 数据库

在应用程序文件夹中的终端(不是 mongo shell)中,

mongodump --port=3001 -o ../dump

<强>2。将 db 文件从“dump/my-db-name”文件夹移到“dump”

在我本地的 meteor 实例中,“dump”文件夹位于我的应用程序上方的文件夹中,因此“dump”与我的应用程序文件夹位于同一目录中。 “转储”包含一个以我的数据库命名的文件夹(“转储/我的数据库名称/”)。这导致下一个脚本失败并出现 mongorestore 错误“不知道如何处理‘my-database-name’”。为防止错误,我将“my-database-name”文件夹中的所有文件移至“dump”,然后删除了“my-database-name”文件夹。

默认情况下,meteor 应用程序创建数据库名称为“meteor”,因此对于浏览此问题且未更改数据库名称的任何人,它将是“dump/meteor/”。

<强>4。将转储的数据库推送到 Heroku 应用程序的 mLabs 实例。 我已经在我的 Heroku 应用程序中添加了 mLabs 插件,并在我的 Heroku 应用程序配置中设置了“MONGO_URL”。如果这些还没有完成,则必须先完成。

在终端(非 mongo shell)中,从应用程序的目录更改为包含“转储”目录的目录。

通过转到 mLabs 插件获取 Heroku 应用程序的 mLabs 实例的默认“导入”脚本,然后单击“工具”选项卡。此处提供的脚本对我不起作用,但它可能对其他人有用,并且它确实提供了我在下面修改后的脚本中使用的变量。

<强>3。如果 mLabs 工具中提供的“导入”脚本不起作用...

在 mLabs 的“用户”选项卡中,创建一个具有管理员权限的用户。

然后,使用此脚本将您的变量替换括号中的变量(也替换括号)。

mongorestore -h [your mLabs value]  -d [your mLabs default user name] -u [your mLabs created user name] -p [your mLabs created user's password]

脚本运行后,您应该能够刷新 mLabs“集合”选项卡并查看推送的数据。

祝你好运 :) 我希望这对某人有所帮助!

关于mongodb - 如何将我的本地默认 Meteor Mongo 数据库的数据推送到 Heroku mLabs 以部署在 Heroku 上的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37905111/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com