2017 - 11 - 10 (금)
MongoDB 소개
MongoDB 는 대표적인 NoSQL 의 문서형 데이터베이스이다. 기존에 사용하던 관계형 데이터베이스 (MySQL, Oracle DB 의 형태와는 조금 다르다.)
{
"_id" : ObjectId("5a044852b1768c2bcc4017ec"),
"id" : "shm",
"password" : "1234",
"name" : "신희준",
"tel" : "01086957242",
"__v" : 0
}
위와 같은 형태처럼 저장이 된다. 마치 JSON 형식과도 같다. 속성 : 값 쌍으로된 데이터오브젝트를 저장하는데 딱히 스키마를 정의하지 않아도 되며 형태가 엄격히 구조화 되어있지는 않은 것 같다.
이러한 MongoDB 는 특히 최근 빅데이터가 대두화 되면서 기존의 DB의 대량 리소스 사용의 단점을 커버할 수 있다. NoSQL(Not only SQL)는 대용량 트래픽을 감당할 수 있기 때문이다.
MongoDB 초기 설정
- mongoDB 설치
1 . 우선 mongoDB 공식페이지 에서 접속 후 Community 탭에 들어가 해당 OS 에 맞는 설치파일을 다운로드 한다.
2 . 다운로드가 완료 되었다면 라이센스 동의 후 complete 버튼을 클릭하여 모든 버전을 설치한다. custom 으로 할 경우 자신이 골라서 설치할 수 있다.(고수만)
3 . 다운로드가 완료되었다면 시스템 변수를 편집한다 ( 환경변수 ) path에 아래의 경로를 추가한다.
C:\Program Files\MongoDB\Server\3.4\bin
4 . 환경변수 설정 후 커맨드 창에 아래 경로로 폴더를 생성한다.
C:\Users\heejun shin>md database
C:\Users\heejun shin>cd database
C:\Users\heejun shin\database>md local
C:\Users\heejun shin\database>cd local
5 . 데이터베이스를 실행한다. (커맨드 창을 끄면 몽고DB 실행이 종료되므로 사용시 켜놓고 있어야 한다.)
C:\Users\heejun shin\database\local>mongod --dbpath .
6 . 셸 상태로 만든다. (명령을 받을준비를 하도록 함)
C:\Users\heejun shin>mongo
7 . 데이터베이스를 지정한다.
> use local //이전에 database 폴더안에 local폴더 생성
해당 작업을 완료하면 데이터베이스 초기설정이 마무리 된다.
Express + MongoDB
express 에서 mongoDB 를 사용하고자 해당 패키지를 설치해야한다.
$ npm install mongodb --save
mongoDB 연결
//몽고 모듈 저장
var Mongo = require('mongodb').MongoClient;
// DB 객체를 위한 변수
var database;
//DB 연결
function connectDB(){
var databaseUrl = 'mongodb://localhost:27017/local';
Mongo.connect(databaseUrl, function(err, db){
if(err)throw err;
database = db;
})
}
//DB 연결
connectDB();
해당작업을 완료하면 Node 서버의 express 에서 몽고 DB를 사용할 수 있다.