【问题标题】:Meteor.js connects to, but does not publish to, remote mongo server?Meteor.js 连接到但不发布到远程 mongo 服务器?
【发布时间】:2019-04-15 02:55:02
【问题描述】:

所以我通过包含 MONGO_URL::@: 的推荐方法将流星的开发模式实例连接到远程 mongo,以便拥有用于保存用户状态的持久集合,允许用户稍后通过加载返回他们在应用程序中输入的内容。我可以在 mongo 服务器上看到来自流星服务器的多个连接。

但是,当运行应用程序时,mongo 服务器上不会出现任何集合。 “显示集合”和 db.getCollections() 都没有返回任何内容。

如果我在没有远程连接的情况下终止应用进程并再次运行流星,则集合在流星启动的 mongo 实例中显示得很好。

为了将集合正确推送到远程实例,我需要在代码中使用流星做些什么特别的事情吗? (即关闭自动发布)

【问题讨论】:

  • 您的问题似乎太模棱两可了。清楚地解释你想要实现的目标,并可能发布一些代码示例来解释你想要什么。
  • @Vaz612 你解决了这个问题吗?
  • @Jankapunkt 是的,实际上!在我忘记验证你的答案之后,我被所有的事情所包围;我们确实在“默认”数据库中运行,而我们所有的数据都被保存到同一个 mongo 实例中的单独数据库中。意识到事情如此简单后,感觉很傻。 :)

标签: node.js mongodb meteor


【解决方案1】:

当您在本地开发 mongo shell 时,您通常输入 meteor mongo 并且 shell 已经进入了您的流星环境的默认数据库。

在您的服务器上,您首先需要明确输入要使用的数据库:

use <db_name>
db.getCollections()

您要使用MONGO_URL 定位的数据库也需要按以下模式定义:

MONGO_URL=mongodb://<db_username>:<db_password>@<db_server_host>:<db_server_port>/<db_name>

确保在使用use 命令连接和输入数据库时​​使用相同的db_name 值。

资源:

https://galaxy-guide.meteor.com/environment-variables.html

https://docs.mongodb.com/manual/core/databases-and-collections/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-05
    • 2016-04-30
    • 1970-01-01
    • 2012-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多