mongoose를 이용하여 mongoDB Atlas에 연결하는 방법
MongoDB Atlas의 클러스터에 Mongoose.connect()를 통해 연결하려고 하지만 연결을 시도할 때마다 "MongoError: authentication failure"라는 예외가 발생합니다. MongoDB Atlas가 서비스로 새로운 mongoose를 아직 지원하지 않을 수 있습니까?
이 관련 게시물의 답변은 정확합니다.다음을 수행해야 합니다.
- 연결 문자열과 옵션을 혼합하지 않음(혼합한 경우)
- 실행 중인 IP가 화이트리스트에 있고 네트워크에서 Atlas에 연결할 수 있는지 확인합니다.
- 사용자에게 충분한 권한이 있는지 확인합니다.
아틀라스에서 제공하는 연결 문자열을 사용하고 다음에 제공합니다.
mongoose.connect(uri);
MongoError: 인증 실패 - 이름, 암호 또는 dbname이 올바르지 않음을 의미합니다 -
uri 샘플 -
const uri =
"mongodb+srv://<username>:<password>@firstcluster.4rc4s.mongodb.net/<dbname>?retryWrites=true&w=majority";
사용자 이름이 -najim & password는 1234이고 dbname은 pets라고 가정합니다(참고 - 기본 dbname은 테스트이지만 원하는 대로 쓸 수 있습니다). 그러면 myuri는 위의 자격 증명으로 -
const mongoAtlasUri =
"mongodb+srv://najim:1234@firstcluster.4rc4s.mongodb.net/pets?retryWrites=true&w=majority";
문구스와 연결되다
try {
// Connect to the MongoDB cluster
mongoose.connect(
mongoAtlasUri,
{ useNewUrlParser: true, useUnifiedTopology: true },
() => console.log(" Mongoose is connected")
);
} catch (e) {
console.log("could not connect");
}
const mongoAtlasUri =
"mongodb+srv://<username>:<password>@firstcluster.4rc4s.mongodb.net/<dbname>?retryWrites=true&w=majority";
try {
// Connect to the MongoDB cluster
mongoose.connect(
mongoAtlasUri,
{ useNewUrlParser: true, useUnifiedTopology: true },
() => console.log(" Mongoose is connected"),
);
} catch (e) {
console.log("could not connect");
}
const dbConnection = mongoose.connection;
dbConnection.on("error", (err) => console.log(`Connection error ${err}`));
dbConnection.once("open", () => console.log("Connected to DB!"));
try {
mongoose.connect( uri, {useNewUrlParser: true, useUnifiedTopology: true}, () =>
console.log("connected"));
}catch (error) {
console.log("could not connect");
}
이것은 잘 작동합니다, 시도해 보세요.
"mongodb+srv://:@cluster0.vvkuk.mongodb.net/ " 또한 아틀라스에서 보안 네트워크 액세스에서 편집 시 작은 버튼 편집 및 삭제 클릭이 있을 것이며, 편집 시 첫 번째 옵션은 현재 IP 주소 추가이고 두 번째 옵션은 첫 번째 옵션으로 이동하고 확인을 클릭합니다.
언급URL : https://stackoverflow.com/questions/43394019/how-to-connect-to-mongodb-atlas-using-mongoose
'programing' 카테고리의 다른 글
vue가 아닌 파일에서 vue app(이) 액세스 (0) | 2023.07.18 |
---|---|
py2exe - 단일 실행 파일 생성 (0) | 2023.07.18 |
스프링 부트 응용 프로그램:유형의 반환 값에 대한 변환기를 찾을 수 없습니다. (0) | 2023.07.18 |
ASP.NET 라우팅을 사용하여 정적 파일 제공 (0) | 2023.07.18 |
#define 매크로에서 # 기호를 이스케이프하시겠습니까? (0) | 2023.07.18 |