일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- yarn
- 알고리즘
- 딥러닝
- codingthematrix
- GRU
- recursion
- C언어
- 코딩더매트릭스
- 주식분석
- 하둡2
- 하이브
- 선형대수
- C
- collections
- hive
- NumPy
- LSTM
- tensorflow
- 파이썬
- RNN
- scrapy
- HelloWorld
- 그래프이론
- graph
- Java
- hadoop2
- effective python
- Sort
- python
- 텐서플로
- Today
- Total
EXCELSIOR
Mac OS에 MongoDB 설치 및 Robomongo 설치 본문
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.
MongoDB 설치는 아래와 같이 HomeBrew를 이용해 설치하고 MongoDB GUI 중 하나인 Robomongo를 설치해본다.
1. HomeBrew 설치
HomeBrew는 Mac OS에서 다양한 패키지들을 관리하기 쉽게 해주는 역할을 한다.
이번 MongoDB를 설치할 때 Homebrew를 이용하여 설치한다.
HomeBrew 설치는 아주 간단하다. 아래의 명령어를 터미널(Terminal)에 입력해 주면 된다.
자세한 설명은 https://brew.sh/index_ko.html 에서 확인할 수 있다.
1 | /usr/bin/ruby -e "$(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 -p /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 에서 참고할 수 있다.