EXCELSIOR

Mac OS에 MongoDB 설치 및 Robomongo 설치 본문

DataBase/MongoDB

Mac OS에 MongoDB 설치 및 Robomongo 설치

Excelsior-JH 2017. 5. 7. 12:47

MongoDB는 아래의 설명에서도 알수 있듯이 문서지향(Document-Oriented)의 cross-platform 데이터베이스이다. NoSQL 데이터베이스이며 JSON형식의   문서를 사용한다. 이번에 Scrapy를 이용한 뉴스 크롤링하기에서 크롤링한 뉴스기사들을 MongoDB에 저장하기 위해 MongoDB 설치를 포스팅하게 되었다.


MongoDB (from humongous) is a free and open-source cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with schemas. MongoDB is developed by MongoDB Inc. and is free and open-source, published under a combination of the GNU Affero General Public License and the Apache License.

출처: https://en.wikipedia.org/wiki/MongoDB


MongoDB 설치는 아래와 같이 HomeBrew를 이용해 설치하고 MongoDB GUI 중 하나인 Robomongo를 설치해본다.


1. HomeBrew 설치

HomeBrew는 Mac OS에서 다양한 패키지들을 관리하기 쉽게 해주는 역할을 한다.

이번 MongoDB를 설치할 때 Homebrew를 이용하여 설치한다.

HomeBrew 설치는 아주 간단하다. 아래의 명령어를 터미널(Terminal)에 입력해 주면 된다.

자세한 설명은 https://brew.sh/index_ko.html 에서 확인할 수 있다.

1
/usr/bin/ruby -"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
cs



2. MongoDB 설치

HomeBrew 설치 완료 후 아래와 같은 명령어를 입력하면 MongoDB가 설치된다.

1
brew install mongodb
cs

3. data 폴더 생성 및 설정

MongoDB는 /data/db 폴더에 데이터를 저장한다. 따라서, 다음과 같은 작업들이 필요하다.

1
2
3
4
5
#db폴더 생성
sudo mkdir -/data/db
 
#db폴더 권한 변경
sudo chown [사용자이름] /data/db
cs

위의 명령어를 입력한 뒤 폴더 권한을 확인하면 다음과 같이 폴더 권한이 변경된 것을 확인할 수 있다.



4. MongoDB 실행

MongoDB를 실행하기 위해서는 서버를 실행한 다음 MongoDB를 실행해야한다.


1) MongoDB 서버 실행

먼저 Terminal에 아래의 명령어를 통해 MongoDB서버를 실행한다.

1
2
# MongoDB 서버
mongod
cs


2) MongoDB 실행 (mongo shell)

새로운 Terminal을 실행하여 아래의 명령어를 입력한다.

1
2
# MongoDB 실행
mongo
cs

아래의 그림에서 마지막에 나타난 문구 'WARNING: soft rlimits too low. Number of files is 256, should be at least 1000' 는 mongod가 적절하게 운용되려면 시스템 자원의 운용과 관련해서 리소스 한계치 설정 값(ulimit settigs)을 권장치 만큼 지정해 줄 것을 권장하는 경고 문구이다.(출처: 미남이의 이러쿵저러쿵)

테스트용으로 mongodb를 사용하는 것은 신경쓰지 않아도 괜찮을 듯 하다.


5. Robomongo 설치

Robomongo는 MongoDB를 관리하기 편하게 해주는 GUI 툴들 중 하나이다. Mac OS/Linux/Windows 운영체제를 지원한다.

다운로드는 https://robomongo.org/download 에서 다운가능하다.


6. Robomongo 실행

Robomongo를 실행하면 다음과 같은 창이 뜬다.

'Create'를 클릭하여 'localhost' MongoDB Connection을 만든다.



7. MongoDB DataBase 생성 및 Collection 생성하기

1) DataBase 생성

MongoDB에서 DataBase생성은 use [db_name] 이라는 명령어를 통해 생성할 수 있다.

위의 4-2) Mongo shell을 실행시킨 후 다음과 같이 입력한다.

1
2
3
# Database 생성
>use news_crawl
switched to db news_crawl #결과
cs


2) Collection 생성

MongoDB에서 Collection은 RDBMS에서 테이블(Table)이라고 생각하면 될 듯(?) 하다. 실제로 데이터들이 저장되는 곳이 바로 Collection이다.

1
2
3
# Collection 생성
>db.createCollection("news")
"ok" : 1 } #결과
cs


위와 같이 DB와 Collection을 생성한 뒤, Robomongo를 통해 제대로 생성되었는지 확인 할 수 있다.

MongoDB에 관련된 명령어는 VELOPERT.LOG 에서 참고할 수 있다.

Comments