【发布时间】:2018-12-27 10:18:52
【问题描述】:
我的应用在 Mlab 的 MongoDB 上运行 NodeJS 9.5.0 和 mongoose 5.1.3。有时,我会收到not authorized to execute command,然后简单地重新启动节点进程即可解决此问题。有什么想法可能导致这种情况吗?
我的连接字符串:
// import environmental variables from our variables.env file
require('dotenv').config({ path: 'variables.env' });
// Connect to our Database and handle any bad connections
mongoose.connect(process.env.DATABASE);
在我的 variables.env 中(用户/密码/数据库编号已编辑):
DATABASE=mongodb://<DBUSER>:<DBPASS>@ds0000-a0.mlab.com:0000,ds000000-a1.mlab.com:00000/app?replicaSet=rs-ds00000
我似乎无法找出随机导致身份验证错误的原因。
【问题讨论】:
-
您可以使用相同的变量从命令行连接吗? docs.mongodb.com/tutorials/connect-to-mongodb-shell
-
我能够使用相同的凭据通过 MongoDB Compass 进行连接。凭据已验证,只是似乎不时进行身份验证。 shell登录会确认不同的东西吗? (数据库在 MLab 上)
标签: node.js mongodb mongoose mlab