brunch

You can make anything
by writing

C.S.Lewis

by 이종복 Jun 05. 2019

MongoDB와 Mongoose


MongoDB란?


 MongoDB는 C++로 작성된 오픈소스 문서지향적(Document-Oriented) 크로스 플랫폼 데이터베이스입니다. 흔히 NoSQL이라고 불리며, 이는 Not Only SQL이라는 의미로서, 기존 RDBMS의 한계를 극복하기 위해 만들어진 새로운 형태의 저장소입니다. RDBMS와는 다르게 고정된 스키마와 JOIN이 존재하지 않는다는 특징을 갖고 있습니다.  



Mongoose란?


 Mongoose는 Node.js와 MongoDB를 위한 ODM(Object Data Mapping) 라이브러리입니다. ODM의 사용은 코드 구성이나 개발 편의성 측면에서 장점이 많습니다. 프로그래밍 언어(Javascript) Object와 MongoDB의 데이터를 Mapping하여 호환성을 만들어내고, 간편한 CRUD를 가능하게 합니다. 

 필요에 따라 확장 및 변경이 가능한 자체 검증(Validation)과 타입 변환(Casting)이 가능하며, Express와 함께 사용하면 MVC 패턴 구현이 용이하다는 장점이 있습니다. 


설치하기


1) 우선, MongoDB의 다운로드 센터에 접속해서 MongoDB Community Server를 다운받습니다. 

     이 때, 자신의 OS에 맞는 것을 선택한 후 다운로드 합니다. 그리고 설치합니다. 


2) 다음은 내 컴퓨터 - 속성 - 고급 시스템 설정 - 환경 변수로 이동해서 

     Path에 C:\Program Files\MongoDB\Server\4.0\bin 을 추가해줍니다. 

     이를 통해서 터미널에서 MongoDB를 인식할 수 있게 됩니다.  




3) VScode의 터미널에서 mongo라고 입력하면 다음과 같이 MongoDB가 성공적으로 설치되었음을 

    확인할 수 있습니다. 


4) 다음은 mongod 라고 입력했을 때 결과를 확인할 수 있습니다. 

    mongod는 MongoDB 시스템을 위한 주요 Daemon process입니다. 

   Daemon이란 사용자가 직접적으로 제어하지 않고, background에서 여러 작업을 하는 프로그램입니다. 

   mongod는 데이터 요청, 데이터 접근 등을 제어하고. background management operation을 수행합니다.

    mongod 명령어는 Node.js에서 Local MongoDB 서버를 시작하거나 끝내는 역할을 합니다.  


5) 이제 mongoose를 설치합니다.

     다음과 같이 간단한 명령어(npm install mongoose)로 mongoose를 설치할 수 있습니다. 


참고 자료

11.3 Node.js(express)와 MongoDB 연동 RESTful API - Mongoose 

https://poiemaweb.com/mongoose

[MongoDB] 강좌 1편: 소개, 설치 및 데이터 모델링

https://velopert.com/436

매거진의 이전글 CRUD 기초(2)

작품 선택

키워드 선택 0 / 3 0

댓글여부

afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari