问题标签 [compose-db]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - Mongo ObjectID 是否应该拼写单词?
今天我正在做一些工作,当我注意到我的一个 MongoDB 文档中有一些奇怪的东西时:
Mongo 在 ObjectID 中拼写单词是否正常,或者这是否表明生成_id
字段的随机化存在问题?
我会密切关注这一点,但如果有人有任何关于这是否应该关注的信息,请提前感谢您的帮助。
node.js - 为 MongoHQ/Compose 安装 Heroku 插件有什么好处吗?
我使用 Heroku 来托管我的 node.js api。我使用 MongoHQ(现在是 Compose)作为我的数据库。很久以前我直接去了 MongoHQ 并设置了一个帐户,我刚刚将我的 mongoose 连接直接设置到我的 MongoHQ/Compose 帐户。
通过heroku插件这样做有什么好处吗?我想我想知道的是,如果我通过插件进行操作,我确信它们都托管在 AWS 上,它是否可能在 AWS 本地网络中进行通信?
真的只是想知道通过插件与手动相比是否有任何好处。
谢谢!
node.js - 存储在 MongoDB 中的 Node.js 日期对象为“1970-01-01T00:00:00.001Z”
我有一个 Node.js 应用程序,我正在使用 Mongoose 与 Compose.io 上的 MongoDB 交互。这是一些应该在我的数据库中存储当前日期和时间的代码:
如果我将这些日期对象打印到控制台,我会得到正确的日期。但是,当我将对象存储在数据库中时,它存储为“1970-01-01T00:00:00.001Z”。有什么想法为什么会发生?
node.js - 检查 MongoDB 的排队读取/写入
我觉得这个问题以前会被问到,但我找不到。如果这是重复,请原谅我。
我正在 Heroku 中托管的 Node.js 上构建服务,并使用 Compose 托管的 MongoDB。在重负载下,延迟最有可能来自数据库,因为在服务层中没有什么非常占用 CPU 的。因此,当 MongoDB 超载时,我想立即返回 HTTP 503 而不是等待超时。
我也在使用 REDIS,REDIS 有一个功能,您可以在其中检查排队命令的数量(redisClient.command_queue.length)。使用此功能,我可以立即知道 REDIS 是否已备份。MongoDB有类似的东西吗?
到目前为止,我发现的最佳选择是通过此命令轮询服务器的状态,但是(1)我希望客户端有一些东西,因为轮询间隔内可能会出现导致问题的尖峰,以及(2)我我实际上不确定我想要对状态响应的哪一部分采取行动。第二部分让我想到了一个后续问题......
我不完全理解 MondoDB 客户端如何与服务器一起工作。每个客户端实例(在我的情况下,每个进程)是否共享一个连接?查询和写入是在本地排队还是在服务器上排队?或者,是否为每个查询/写入打开一个连接,直到数据库的连接池耗尽?如果是后者,似乎我可能想关注打开的连接。除了轮询状态之外,MongoDB 服务器是否会在其他时间返回此类信息?
谢谢!
deployment - 我在 Meteor Up 中将 MONGO_OPLOG_URL 设置为什么?
我在 Compose.io 中创建了一个数据库和一个具有 oplog 访问权限的用户。
我得到的 URI 如下所示:
知道了这一点,我将什么设置为MONGO_URL
and MONGO_OPLOG_URL
in mup.json
?
实际上没有关于此的文档。:(
mongodb - Mgo 缓存连接字符串吗?
我的 Go 应用程序一直使用 MGO 连接到 MongoDB(托管在 Compose.io 上),没有任何问题。
今天我决定删除这个数据库并添加一个不同的数据库(再次使用 Compose)。我更新了连接字符串。
所以我连接使用:
使用用户名和密码。
奇怪的是,应用程序似乎仍然连接到旧数据库。我知道这一点,因为我打印了err
一条消息,告诉我:在我尝试执行查询后,未授权查询 my-old-db-name 。
我已经go install
再次运行编译但仍然没有运气。
mongodb - 如何将 Mongo 数据库从一台远程服务器传输到另一台远程服务器
我需要将多个数据库从一个基于云的远程服务器/服务 (modulus.io) 转换到另一个 (Compose.io)。据我所知,我在目标服务器上没有控制台访问权限,这似乎是使用 mongocopy 或 mongorestore 所必需的。我有所有的凭据。我该怎么做呢?我应该使用什么命令,或者是否有为此目的设计的工具?我目前正在尝试使用 mongodump 将数据库移动到我的本地机器,然后尝试将其 mongorestore 到目标机器。这进展非常缓慢,即使对于一个中等大小的数据库(<2GB),它看起来也需要一天的大部分时间才能下载)。
谢谢
mongodb - 无法使用 Mongo 客户端访问 Compose.io 上的 MongoDb 集合
自上周以来,我无法使用任何 mongo 客户端访问 Compose.io 上的 mongoDb 集合。客户端日志说它已连接到数据库,但是当我想列出集合或查看文档时说“找不到集合!”。我直到可以连接终端并在那里做我需要的任何事情。
最初我认为这是我的 MacOS 机器的问题,但后来我尝试从其他计算机连接并使用不同的客户端(Mongo-Express、MongoHub)仍然没有运气。
想知道是我一个人遇到这个问题还是其他 compose.io 客户端也遇到这个问题?
- 尝试按照此处的建议向我的 mongo 用户授予 readWrite 角色(MongoDB - 管理员用户未授权),这也无济于事。
- 联系了 compose.io 支持,但他们发誓这确实改变了任何事情。
任何建议表示赞赏。谢谢你。
ssl - 如何使用 `connect-mongo` 的`express-session` 通过 TLS/SSL 连接到`mongos` 实例?
我connect-mongo
用作 的存储模块express-session
,一切正常,直到我'MongoDB+' TLS/SSL
从 切换到新部署Compose.io
,现在我无法连接。
我不详细了解他们的架构,但可以在这里找到更多信息: Bringing SSL To Compose MongoDB
在这里: 使用 Compose MongoDB+ 使用 SSL
在这里: 一个丢失的密钥以及它是如何破坏 Node.js 的
我确实知道,当您连接时,您需要声明mongos
选项,并且您的连接代码最终看起来像这样:
该连接字符串与这些连接选项一起使用mongo-native
驱动程序工作。我可以连接并执行所有操作。
但是在这种情况下应用它们会产生......什么都没有。它只是挂起。
知道如何产生任何输出以进一步调试吗?
谢谢你的帮助!
mongodb - Connecting to remote mongodb quite slow
I have an website which is set up to use a MongoDB instance on compose.io. Everything is working ok, except for that my connection to compose.io and mongoDB takes about 1.2 seconds to connect. In my opinion this is quite slow, especially when several queries are fired on the database.
What would be viable tactics to increase the connection speed, or other tactics like caching to speed up the web app? Or would a setup with mongoDB installed on the server be a better solution?
I am using mongoclient on php to connect to mongoDB on compose.io. I use the following code to connect: