2014년 11월 24일 월요일

MongoDB를 설치해 봅니다.

MongoDB를 설치해 봅니다.
 조회 : 46
나의 폴더 > ASP.NET MVC | 2014-01-16 (Thu) 14:38 http://blog.dreamwiz.com/papasmf1/14018694

요즘 Microsoft의 기술이 아닌 외부 기술들도 많이 테스트 하고 있습니다. 오픈 소스형태의 NOSQL로 제공되는 Mongodb를 설치해서 테스트 해 보았습니다.

1.
   
www.mongodb.org사이트에서 윈도우용을 받는다.
2.    압축 파일을 풀어서 c:\data폴더를 만들어서 복사한다. 여기에 db폴더도 추가로 생성한다. 32비트와 64비트가 별도로 있으므로 윈도우 7에 알맞은 프로그램을 설치하도록 한다.
 
3.    도스창을 오픈해서 cd c:\data\bin에 가서 mongod를 실행한다.
 
4.    다른 도스창을 하나 더 오픈해서 cd c:\data\bin에 가서  mongo를 실행한다.






 
5.    다음과 같은 명령어들을 실행해 본다.
> 300+10
310
> var a = 0;
> for (var i=0;i<10;i++) { a += i; }
45
> a
45
> db
test
> use node
switched to db node
> db
Node
(저장하기 위한 공간을 만든다.)
> db.createCollection('products')
{ "ok" : 1 }
(아래와 같이 저장한다.)
> db.products.save({ name: 'pencil', price: 500})
> db.products.find()
{ "_id" : ObjectId("52d768de57f0ba28083d6221"), "name" : "pencil", "price" : 500
 }
> db.products.save({ name: 'eraser', price:500 });
> db.products.save({ name: 'notebook', price:2000 });
> db.products.save({ name: 'glue', price:700 });
> db.products.save({ name: 'stapler', price:3000 });
> db.products.save({ name: 'brush', price:2000 });
> db.products.save({ name: 'protractor', price: 500 });
> 
> db.products.find()
{ "_id" : ObjectId("52d768de57f0ba28083d6221"), "name" : "pencil", "price" : 500
 }
{ "_id" : ObjectId("52d7690257f0ba28083d6222"), "name" : "eraser", "price" : 500
 }
{ "_id" : ObjectId("52d7693457f0ba28083d6223"), "name" : "notebook", "price" : 2
000 }
{ "_id" : ObjectId("52d7694657f0ba28083d6224"), "name" : "glue", "price" : 700 }

{ "_id" : ObjectId("52d7695757f0ba28083d6225"), "name" : "stapler", "price" : 30
00 }
{ "_id" : ObjectId("52d7696957f0ba28083d6226"), "name" : "brush", "price" : 2000
 }
{ "_id" : ObjectId("52d7697757f0ba28083d6227"), "name" : "protractor", "price" :
 500 }
6.    다른 명령어들을 실행해 보면 아래와 같다.
> db.products.find({}, { _id: false})
{ "name" : "pencil", "price" : 500 }
{ "name" : "eraser", "price" : 500 }
{ "name" : "notebook", "price" : 2000 }
{ "name" : "glue", "price" : 700 }
{ "name" : "stapler", "price" : 3000 }
{ "name" : "brush", "price" : 2000 }
{ "name" : "protractor", "price" : 500 }
> 
> db.products.find({ price: 500}, { _id: false })
{ "name" : "pencil", "price" : 500 }
{ "name" : "eraser", "price" : 500 }
{ "name" : "protractor", "price" : 500 }
> db.products.findOne()
{
        "_id" : ObjectId("52d768de57f0ba28083d6221"),
        "name" : "pencil",
        "price" : 500
}
> db.products.find({ price:500}, { _id: false}).sort({ name: 1})
{ "name" : "eraser", "price" : 500 }
{ "name" : "pencil", "price" : 500 }
{ "name" : "protractor", "price" : 500 }
> db.products.find({ price:500}, { _id: false}).sort({ name: -1})
{ "name" : "protractor", "price" : 500 }
{ "name" : "pencil", "price" : 500 }
{ "name" : "eraser", "price" : 500 }
> db.products.find().sort({ price: 1}).limit(3)
{ "_id" : ObjectId("52d768de57f0ba28083d6221"), "name" : "pencil", "price" : 500
 }
{ "_id" : ObjectId("52d7690257f0ba28083d6222"), "name" : "eraser", "price" : 500
 }
{ "_id" : ObjectId("52d7697757f0ba28083d6227"), "name" : "protractor", "price" :
 500 }
> db.products.find().sort({ price: 1}).skip(3).limit(2)
{ "_id" : ObjectId("52d7694657f0ba28083d6224"), "name" : "glue", "price" : 700 }

{ "_id" : ObjectId("52d7693457f0ba28083d6223"), "name" : "notebook", "price" : 2
000 }
(수정할 경우)
> var temp = db.products.findOne({ name: 'eraser'})
> temp
{
        "_id" : ObjectId("52d7690257f0ba28083d6222"),
        "name" : "eraser",
        "price" : 500
}
> temp.price = 700
700
> db.products.save(temp)
> db.products.find()
{ "_id" : ObjectId("52d768de57f0ba28083d6221"), "name" : "pencil", "price" : 500
 }
{ "_id" : ObjectId("52d7690257f0ba28083d6222"), "name" : "eraser", "price" : 700
 }
{ "_id" : ObjectId("52d7693457f0ba28083d6223"), "name" : "notebook", "price" : 2
000 }
{ "_id" : ObjectId("52d7694657f0ba28083d6224"), "name" : "glue", "price" : 700 }

{ "_id" : ObjectId("52d7695757f0ba28083d6225"), "name" : "stapler", "price" : 30
00 }
{ "_id" : ObjectId("52d7696957f0ba28083d6226"), "name" : "brush", "price" : 2000
 }
{ "_id" : ObjectId("52d7697757f0ba28083d6227"), "name" : "protractor", "price" :
 500 }
> 
(한건씩 삭제할 경우)
> db.products.remove({ name: 'notebook'})
        (전체를 삭제할 경우)
> db.products.remove()

댓글 없음:

댓글 쓰기

참고: 블로그의 회원만 댓글을 작성할 수 있습니다.

송길영 작가의 신간 - "경량문명의 탄생" 독서 후기입니다.

  문명이 바뀌고 있다는 것을 누구나 감지하고 있습니다. ㅎㅎ 중량문명이 아닌 경량문명의 시대가 도래하고 있습니다. 수업을 하면서, 또는 친구들과 대화하면서 문명이 바뀌고 있다는 말을 자주했는데 정말 설명하기 좋은 단어가 바로 "경량문명...