在Meteor生产服务器上恢复MongoDB

3
我正在尝试将本地默认的Meteor Mongo数据库中的所有数据复制到生产服务器,以便在“app.meteor.com”中使用。
我尝试使用“meteor mongo --url app.meteor.com”提供的信息来使用mongorestore,但它不会修改任何文档。 此外,当我连接到服务器的Mongo数据库时,我只能读取(查找)文档。当我使用更新或插入函数时,它会显示“not master”。
2个回答

6

运行 ~/meteor/meteor mongo -U yoapp

会得到类似以下内容:

mongodb://client:387shff-fe52-07d4-69a4-ba321f3665fe7@c0.meteor.m0.mongolayer.com:27017/yoapp_meteor_com

把这些值放入mongorestore中,像这样:
mongorestore -u client -p 387shff-fe52-07d4-69a4-ba321f3665fe7 -h c0.meteor.m0.mongolayer.com:27017 -db yoapp_meteor_com /home/user/dump/yoapp

我刚刚将一个生产应用程序转储到了我的本地开发机器上。正在测试一些新的更改。将代码推送到meteor.com上的一个暂存安装中,然后使用mongorestore填充了暂存数据库。


0
此外,当我连接到服务器的mongo数据库时,我只能读取(查找)文档。当我使用更新或插入函数时,它会显示“not master”。
这可能是因为您连接的服务器不是主服务器,而是副本集中的从服务器。从服务器是只读的,所有写操作都需要指向主服务器。您可以通过查询rs.conf()并查看members中的条目来获取主机名:端口。请参见http://docs.mongodb.org/manual/reference/replica-configuration/ 获取主服务器,然后在其上尝试mongoimport/mongorestore。
您还应该在生产服务器上跟踪mongod日志,以查看是否有导入错误(如果您有访问权限)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接