无法在任何地方找到答案。这就是问题:
我使用MongoDB将它设置在我的NodeJS项目的digitalocean上。我已经安装了NodeJS和MongoDB,还克隆了我的项目。起初我在端口8888上运行我的项目,它与mongodb一起运行良好。然后我将admin
用户添加到admin
表中,每当我再次运行我的nodejs项目时,我都会收到此错误
UnhandledPromiseRejectionWarning: MongoError: not authorized on test to execute command
如何授权呢?在运行我的应用程序之前,我应该以某种方式进行授权吗?
我创建的用户:
db.createUser(
{
user: "******",
pwd: "****",
roles: [ { role: "root", db: "admin" } ]
}
)
答案 0 :(得分:3)
您需要使用用户身份验证更改mongodb连接字符串以避免此问题。如果您创建了使用" admin_user"和密码" test1234"和mongodb服务器" 127.0.0.1:27017"然后连接字符串如下所示,
"MONGODB_URL": "mongodb://admin_user:test1234@127.0.0.1:27017/YourDBName",