Node공부를 하며 MongoDB를 설치하다가 오류때문에 꽤나 고생을 했다ㅜㅜ
다음 번을 위하여... 나와 같은 사람들을 위하여 정리를 해보려한다!
.
.
.
먼저, 홈페이지에서 커뮤니티 서버를 다운받는다!
설치 파일을 실행해 설치를 진행한다. 대부분 [next]를 누르면 되고 'Choose Setup Type'이 나오면 Complete로 선택해준다!!
(원하는 설정을 하고 싶다면 'Custom'으로 선택해도 무방함)
'Service Configuration'단계에서 중요한 점은 'Install MongoD as a Service' 체크박스를 선택하게 되면 클라우드가 내 데이터베이스 서버가 된다! 클라우드로 MongoDB를 이용하고 싶다면 체크를 하고 아니라면 해제를 하자. 난 해제를 하고 진행했다.
'Install MongoDB Compass'부분에서 왼쪽 밑에 Install MongoDB Compass'를 체크하고 설치를 진행하면 MySQL의 워크벤치와 비슷한 역할을 하는 Compass까지 함께 설치가 된다!
설치 과정 사진 출처
: https://khj93.tistory.com/entry/MongoDB-Window%EC%97%90-MongoDB-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0
.
.
설치가 완료된 후 지금부터 복잡해졌다.
책에는 bin 파일로 이동을 하고..~환경변수 설정을 하고..~mongo명령어로 mongodb서버를 실행해라..~라고 써있는데 버전 6.0이상에서는 적용되지 않는 점들이 많았다..ㅜ.ㅜ
.
.
열심히 검색을 해서 알아낸 결과!!
.
.
6.0이상 버전에는 mongo.exe가 없어서 mongo명령어를 실행할 수 없다!
그래서 환경변수를 설정해보아도..cmd창에 죽어라 mongo를 입력해보아도 다음과 같은 오류만 뜨고 되지 않았던 것이다.
.
.
해결방법은 MongoDB shell을 설치해주는 것이다.
.
.
MongoDB Shell : https://www.mongodb.com/try/download/shell
위 링크로 들어가 MongoDB shell을 다운받는다.
zip 파일이 다운로드 된 후 경로를 설정해 압축을 풀어준다.
.
.
.
use roadbook
: use 데이터베이스명 은 MySQL에서 use database;로 해줬던 것처럼 database를 생성해주는 역할을 한다.
db
: 현재 Collection이 무엇인지 알고싶을 때 사용한다.
db.createCollection("컬렉션명")
: Collection을 생성한다.
show collections
: Collection을 조회한다.
db.Collection명.insert({"key":"value"})
: 데이터 생성
db.Collection명.find()
: 데이터 조회
db.Collection명.find(query, projection)
: 원하는 데이터만 조회 가능. query는 조회하는 기준을 정하고 기준이 없다면 {}을 입력, Projection은 보여 주고 싶은 Field를 설정한다. Field:0이면 해당 필드만 보지 않기, Field:1이면 해당 필드만 보기 명령
db.Collection명.remove({"key":"value"})
:해당 키와 값이 있는 Document 삭제
db.[collection명].drop()
: 컬렉션을 삭제하는 명령어
db.dropdatabase()
: 데이터베이스를 삭제하는 명령어
이 외에도 다양한 명령어들이 많은데, 공식문서를 보며 나에게 유용할 것 같은 명령어와 옵션을 정리하며 익혀 놓아 나만의 공식 문서를 만들어본다면, 쿼리나 명령문 작성 시 다른 사람이 정리해 놓은 글보다는 내가 정리해 놓은 글이 더 찾기도 쉽고 이해도 빠르기 때문에 개발 속도도 높일 수 있을 것이다!!