Mongo DB 를 다루기위해서 기본적인 커맨드를 정리해본다.

혹시 설치를 못하신 분은 아래의 포스팅을 참고~!

https://freekim.tistory.com/12

 

[MongoDB] 몽고디비(NoSQL)의 개념과 설치 방법 (Window)

이글은 Mongo DB를 하나도 사용하지 않은 상태에서, 한번 사용해보기 위해 간단히 짚고 넘어간 개념들을 정리 한 입문 포스팅입니다. 이글은 정확한 Mongo DB의 스펙을 안내하는 글이 아닙니다. 혹시 정확한 스펙..

freekim.tistory.com

 

1. MongoDB 서버 실행

> mongod --dbpath <DB 경로>

 Command 창을 열어 위의 명령어를 실행해준다. 기본경로에 파일을 만든 사람은 그냥 mongod 만 쳐도 되고 path 를 따로 지정해주고 싶으면 뒤의 --dbpath 와 원하는 경로도 같이 넣어줘서 폴더를 지정할 수 있다.

 

2. MongoDB 쉘 실행

> mongo

서버를 실행해 둔채로 새로운 커맨드창을 여러 위의 커맨드를 실행한다.

아래와 같이 Shell Command 창으로 전환이 되는 것을 볼 수 있다.

 

3. 데이터베이스 생성

> use <DB 이름>

데이터 베이스를 사용하려면 관계형 db에서 database를 만들고 table 을 만들어 주는 것과 똑같이 database 를 먼저 만든 후 collection 을 만들어 주면된다. 

 use 명령어를 통해서 db를 만들어준다. 이 database 를 사용하겟다! 라는 느낌 git checkout 같은 느낌.

> show dbs

현재 생성되어 있는 db들을 보여준다. use database 를 하자마자 show dbs를 하면 안보이는데 collection 을 만들어 주면 그때부터 보이니 당황하지 마시길.

> db

현재의 사용하고 있는 db를 보여준다.

 

4. 컬렉션 생성 및 보기 

> db.createCollection("[COLLECTION_NAME]")

person collection을 예제로 생성한 뒤 show dbs 를 하면 databse db가 생성된 것을 볼 수 있다. 여기서 주의할 점은 db  는 만든 db명이 아니라 현재 db 를 가르키는 느낌으로 사용해주면된다. db를 바꾸고 싶으면 use 로 바꾸고 db.xxx해서 사용하면된다.

옵션도 있는데 필요할 때 찾아보시길..

 

> show collections

현재 생성된 collection들을 보여준다.

5. Document 

insert()

> db.person.insert({"nickname":"freekim", "email":"test@google.com"})

document 는 insert 명령어를 통해 json format 으로 insert 한다. 배열의 형태로 넣으려면 [] 를 사용한다. json format 과 똑같다. 아래서 보면 알 수 있듯이 잘 들어갔다. 

참고로 collection 을 안만들어도 insert 해주면 collection 이 생성되어 들어간다

find()

db.person.find()

find 를 이용하여 collection에 들어있는 값들을 볼 수 있다. 아주 잘 들어가 있다. 

find(query, projection) 메소드는 query 와  projection parameter 를 주어서 원하는 조건의 검색과, 보고싶은 결과 선택도 가능하다. 0은 보기, 1은 안보기 

query 는 필요할 때 인터넷에서 찾아보면 많다. 일단은 빠르게 CRUD 만 해보는 거니 Pass 하도록 하겠다.

 

 

6. 삭제 

Document 삭제

> db.person.remove({"nickname":"freekim"})

nickname freekim 의 document 가 잘 삭제 되었다.

Collection 삭제

> db.[collection 이름].drop()

database 삭제

> db.dropDatabase()

시작 하면서 만든 database db 가 잘 지워졌다.

 

마치며..

Mongodb 의 기본적인 동작들을 해보았다. 개발하면서 필요한 기능이나 쿼리들은 검색을 하면 쏟아질 것이니 일단 가볍게 개발을 시작하고, 필요할 때 찾아 써봐야겠다.

 

Update 와 find 에 대해서 자세한 명령어는 아래의 사이트에 아주 잘 정리되어 있어 굳이 두번 정리하지 않겠다.

https://poiemaweb.com/mongdb-basics-shell-crud

 

 

'MongoDB' 카테고리의 다른 글

[MongoDB] 몽고디비(NoSQL)의 개념과 설치 방법 (Window)  (1) 2020.03.29

+ Recent posts