React

[리액트]mongo DB 연결하기 (몽고 db 연결 에러 해결 tip)

뉴라코 2024. 11. 23. 19:07

https://cloud.mongodb.com/v2#/org/6741951615d0a0648f9ed0ed/projects

 

 

Cloud: MongoDB Cloud

 

account.mongodb.com

1번)

1. 클러스터 클릭

2. 클러스터 이름 적기 (나는 newlifecode)

3. 무료 버전으로 클릭

4. username과 password를 입력한다 (newlifecode, 숫자4)

5.create database user를 누른다

6. choose a connection method를 누른다

7. 나는 여기서 mongodb for vs code를 눌렀다

8. 그리고 뜨는 링크를 복사해서 vs code에 입력해놓는다(추후에 쓸 예정)


2번)

- terminal에 npm install moongoose -- save를 입력한다

 

-package.jason에 가보면 moongoose 생김.

 


실제로 연결하고 확인하기

const express = require('express')
const app = express()
const port = 5000

const mongoose = require('mongoose')
mongoose.connect('mongodb+srv://newlifecode:1234@newlifecode.f0tau.mongodb.net/?retryWrites=true&w=majority&appName=newlifecode'
, {
    useNewUrlParser: true,
    useUnifiedTopology: true,
  })
  .then(() => console.log('MongoDB Connected...'))
  .catch(err => console.error('MongoDB Connection Error:', err.message));


app.get('/', (req, res) => {
  res.send('Hello World!')
})

app.listen(port, () => {
  console.log(`Example app listening on port ${port}`)
})

-두 번째 문단 두 번째 줄, url 복사한 것에 <db_password> 이부분은 내 비밀번호를 직접 입력하면 됨. 


mongodb 연결안될 때 tip

 

나는 포트 충돌 에러, mongodb 드라이버 경고가 있었다.

-const port=5000 을 const port=3000으로 바꾸고

-node.js 드라이버 버전에 따라서 useNewUrlParser useUnifiedTopology 옵션이 필요하지 않아 삭제해야했다. 

(node 18 버전이 안정이라고 하는데 나는 22깔려있어서 powershell에 18버전 코드 입력하고 난리침..)

 

이렇게 했는데도 계속 연결 오류 나서 방법을 바꿨다.
VS CODE에서 MONGODB 추가하기!

 

1. vs code의 extension 을 누른다.

2. mongodb를 입력하고 install 한다

3. connect with Connection Settings 밑에 있는 connect 를 누른다 

4. 나의 url을 복사 붙여넣기 한다 ( 이 때, 비밀번호 <db_password>는 위와 같은 방법으로 진짜 비번 입력)

5. 연결되면서 완료!