node.js 설치 및 초기설정을 마쳤다면, 서버와 연결할 DB로 Mongo DB를 사용해볼게요!
아직 설치가 안되신 분들은 아래링크를 참고해주셔요!
https://dev-vlog200ok.tistory.com/32
[Node.js] 설치 및 초기설정(express)
node.js 노션도 만드는 중! 블로그에도 열심히.. 옮겨놓도록 하겠어욤🥳 (...라고 100번째 말만하는중ㅎㅎ) 언제까질지는 몰라도 하이팅! 설치 및 초기설정(Express) node.js 설치 https://nodejs.org/ko/ Node.js
dev-vlog200ok.tistory.com
몽고DB연결을 위한 대략적인 로드맵은 아래와 같습니다.

MongoDB
MongoDB: The Application Data Platform
MongoDB: The Application Data Platform
Get your ideas to market faster with an application data platform built on the leading modern database. MongoDB makes working with data easy.
www.mongodb.com
- Cluster만들기

2. user 만들기
user이름과 password를 만들고 꼭 기억해두도록합니다.
3. IP connect
본인 ip주소로 연결

4. connect application
Connect your application 선택

5. 코드에 연결하기

아래 연결을 위한 application code를 복사해서 저장해두세요!
mongodb+srv://arimSeo:<password>@cluster0.im4ee.mongodb.net/myFirstDatabase?retryWrites=true&w=majority
6. Mongoose 설치
: 간단하게 MongoDB를 연결할 수 있는 Object Modeling Tool
$ npm install mongoose --save //설치

- 앞서 복사해두었던 연결 application code를 아래와 같이 적절한 위치에 넣어주세요
const mongoose = require("mongoose");
mongoose.connect("mongodb+srv://arimSeo:<password>@cluster0.im4ee.mongodb.net/myFirstDatabase?retryWrites=true&w=majority",{
*//useNewUrlParser: true, useUnindifiedTopology: true, useCreateIndex:true, unFindAndModify: false
//에러방지(6.0부터는 이미 적용되어있어 필요X- 있으면 오히려 에러남)*
}).then(() => console.log("MongoDB connected...")) //연결잘되면
.catch((err) => console.log(err)); //연결안되면
실행시켜서 연결확인!
$ npm run start
*wifi로 변경 등으로 인해 IP주소가 바뀌면 아래와 같은 에러가 뜰 수 있으니 있으니 주의!
-> MongooseServerSelectionError: Could not connect to any servers in your MongoDB ~
mongoose이용하여 mongoDB연결시 에러.
mongoose이용하여 mongoDB연결시 에러.
{ MongooseServerSelectionError: Could not connect to any servers in your MongoDB Atlas cluster.~~ ....에러메시지시 해결방법
velog.io
해결법
- Network Access >> Add IP Address 클릭

- Add Current IP Address 클릭

++ 모델링(예시)
model: (컬럼)스키마를 감싸주는 역할
Schema: (속성) 정보
-유저모델 만들기
const mongoose = require("mongoose"); //mongoose 모듈 가져오기
//mongoose를 이용해 스키마 생성
const userSchema = mongoose.Schema({
//필드 작성
name: {
type: String,
maxlength: 50,
},
email: {
type: String,
trim:true, //입력한 이메일에 띄어쓰기가 있을경우 없애줌
unique:1 //이메일 중복x
},
password: {
type:String,
minlength: 6
},
lastname:{
type:String,
maxlength: 50
},
role: {
type: Number,
default: 0 //0이면 사용자, 1이면 관리자
},
image: String,
//토큰으로 유효성 관리
token:{
type:String
},
//토큰 유효기간
tokenExp:{
type:Number
}
});
//스키마를 모델로 감싸주기 _.model('모델명',스키마이름)
const User = mongoose.model('User',userSchema)
//User모델을 외부에서 쓸 수 있도록 export 하기
module.exports={ User }
이번시간에는 몽고db를 연결해보고 모델링까지 연습해보았는데요,
다음엔 이어서 client와 server가 어떻게 정보를 요청하고 응답하는지에 대해서 작동시키기 위한 과정을 진행해볼게요!
그롬 안뇽 🚗

'Develop > Node JS' 카테고리의 다른 글
[Node.js] 설치 및 초기설정(express) (0) | 2022.02.10 |
---|
댓글