{MongoError:错误的身份验证身份验证失败

时间:2020-09-14 23:37:54

标签: node.js mongodb npm npm-start

我对Node js和mongo db很陌生

当我在代码上使用npm start时, 它给出了这个错误

server running in production mode on port 5000
{ MongoError: bad auth Authentication failed.
    at MessageStream.messageHandler (/home/suyash/Documents/app/node_modules/mongodb/lib/cmap/connection.js:268:20)
    at MessageStream.emit (events.js:198:13)
    at processIncomingData (/home/suyash/Documents/app/node_modules/mongodb/lib/cmap/message_stream.js:144:12)
    at MessageStream._write (/home/suyash/Documents/app/node_modules/mongodb/lib/cmap/message_stream.js:42:5)
    at doWrite (_stream_writable.js:415:12)
    at writeOrBuffer (_stream_writable.js:399:5)
    at MessageStream.Writable.write (_stream_writable.js:299:11)
    at TLSSocket.ondata (_stream_readable.js:710:20)
    at TLSSocket.emit (events.js:198:13)
    at addChunk (_stream_readable.js:288:12)
    at readableAddChunk (_stream_readable.js:269:11)
    at TLSSocket.Readable.push (_stream_readable.js:224:10)
    at TLSWrap.onStreamRead [as onread] (internal/stream_base_commons.js:94:17) ok: 0, code: 8000, codeName: 'AtlasError', name: 'MongoError' }
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! app@1.0.0 start: `cross-env NODE_ENV=production node app`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the app@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/suyash/.npm/_logs/2020-09-14T23_12_00_524Z-debug.log

我试图制作一个应用程序,并尝试连接mongodb数据库

在db.js文件中,这是我的代码

const mongoose = require('mongoose')

const connectDB = async () => {
    try {
        const conn = await mongoose.connect(process.env.MONGO_URI, {
            useNewUrlParser:true,
            useUnifiedTopology: true,
            useFindAndModify: false,
        })

        console.log(`MONGODB connected: ${conn.connection.host}`);

        
    } catch (error) {
        console.error(error)
        process.exit(1)
    }
}
module.exports = connectDB

我不知道该怎么办

3 个答案:

答案 0 :(得分:0)

我发现我使用的密码不正确,应该在连接字符串上使用用户密码而不是帐户密码。
我在寻找答案时遇到了这个问题,对于node和mongo来说我还是很新。

This is where I found the answer
对不起,如果我的英语不好

答案 1 :(得分:0)

我刚刚创建了一个 db 一个用户并开始但它没有工作。当我在工作 LOL 的 mongo 云中为这个 db 添加一个新用户时。

答案 2 :(得分:0)

我不得不将用户角色从“Atlas 管理员”更改为“读取和写入任何数据库”,然后我才能使用。