[MongoDB] 실습 환경 만들기 MongoDB / Robo 3T / Pymongo (MAC 환경)

조상래·2021년 5월 14일
1

MongoDB

목록 보기
2/5

(MAC 기준)

1. MongoDB 설치

Homebrew를 이용하여 설치할 예정이다.

$ brew install monogodb (안되는 명령어)

기본적으로 위 처럼 먼저 시도해 볼 것인데 명령어가 안 먹힐 것이다. 그 이유는 MongoDB가 Homebrew-core에서 제거 되었다고 한다. 비공개 소스로 전환 했다는 얘긴 것 같다.(참고자료: Stackoverflow) 만약 기존의 설치 방법으로 설치된 버전이 있다면 unistall을 써서 제거해주자.

아래 처럼 설치하면된다. (공식 깃헙레포 참고)

$ brew tap mongodb/brew

패키지 저장소를 추가하는 명령어이다.

$ brew install mongodb-community

위의 명령어로 설치를 진행하자. $ brew install mongodb-community@4.4와 같은 방식으로 원하는 버전 선택가능

$ mongod --config /usr/local/etc/mongod.conf

나는 이미 설치가 되어있는 관계로 위와 같이 뜨는데 'mongod --config /usr/local/etc/mongod.conf' 부분은 공통으로 나올 것이다. --config 옵션으로 configuration 구성하는 것인데 mongod.conf에 디폴트가 이미 설정 되어있으므로 만약 변경을 원한다면 직접 파일을 열어 변경하면된다.

(mongod.conf 구성)

$ mongo

위의 명령어로 실행 시켜보자.

위와같이 나온다면 성공이다.

[추가 명령어]

  • $ brew services start mongodb-community - mongod 서비스 실행
  • $ brew services stop mongodb-community - mongod 서비스 중지
  • $ brew uninstall mongodb-community - MongoDB 삭제
  • $ brew uninstall mongodb-database-tools - 번들 삭제

2. Robo 3T (GUI 프로그램)

Robomongo 공식사이트 다운로드 탭에 접속한다.

(웹 페이지 구성이 상이할 수 있음)

실습을 위한 간단한 구성의 Robo 3T를 받으면된다.
귀찮지만 작성하여 다운로드한다. 그럼 dmg 파일이 다운로드 되고 설치를 완료하면된다.

실행하면 위와같은 화면이 뜰 것인데, MAC 자체의 시스템 환경설정 -> 보안 및 개인 정보 보호 -> 일반 탭으로 들어간다.

확인 없이 열기를 눌러주면된다.

위의 항목들로 연결을 할 수 있다. 처음이니 Create를 눌러서 열결을 하면된다.

지금 필요한 핵심적인 것들 만 본다면.
1) Name: GUI 내에서 명시할 이름
2) Address / Port: 말 그대로 Address 와 Port인데 원격 접속을 원한다면 설정해주면 된다.
3) Test: 연결 테스트이다
4) 테스트 성공화면: 연결이 잘 되었다면 위와 같이 나올 것이다.

Connect를 누르면 navigator에 추가가 되어 있을 것이다.

3. Pymongo

Pymongo란 MongoDB와 Python을 연결해주는 Python 라이브러리이다. (Pymongo 공식문서) 먼저 파이썬, PIP라는 패키지 관리 시스템 설치가 선행이 되어있어야한다.

$ pip install pymongo

위의 명령어로 라이브러리를 설치한다.

import pymongo

connection = pymongo.MongoClient() # 주소를 쓰지 않을 경우 무조건 27017로 접속 aws를 쓸 경우 ('mongodb://ip주소')
db = connection.test # db = connection["test"] 데이터베이스 없으면 만들어 짐

print(db) # Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'test')

pymongo를 import하고 MongoClient() 메소드를 사용하여 객체를 생성한다. 생성된 객체로 데이터베이스 이름을 명시 해주면 데이터베이스 객체가 생성된다. 위의 과정으로 데이터베이스 생성 또는 기존에 있다면 선택이 가능하다.

위 과정이 끝나도 GUI에 표시가 되지 않을 것인데 이는 Collection / Document를 생성해야 나올 것이다.

import pymongo

connection = pymongo.MongoClient()
db = connection.test

db_user = db.user

user = {"name": "Sangrae", "intro": "Hello!", "tags": ["mongodb", "python", "pymongo"]}

db_user.insert_one(user)

간단하게 위의 명령어로 user Collection (데이터베이스와 마찬가지로 없으면 생성)에 Document를 하나 생성해보자.

위와 같이 나온다면 성공이다.

이로써 기본 실습 준비는 끝이다.

profile
Codestates Full IM26기 수료

0개의 댓글