Hombrew를 통해 MongoDB 설치
brew tap mongodb/brew
: MongoDB 탭 추가
brew tap | grep mongodb -
: MongoDB 탭이 정상적으로 추가됐는지 확인 —> 터미널 화면에 mongodb/brew
가 출력되면 문제 없이 탭 추가가 완료된 것이다.
brew tap
(맥북에 추가된 전체 탭 목록을 출력) 명령으로도 탭 추가 여부 확인이 가능.
brew install mongodb-community@4.4
: MongoDB 설치
MongoDB 실행
brew services start mongodb-community@4.4
: MongoDB 활성화
brew services stop mongodb-community@4.4
: MongoDB를 비활성화시키고 싶을 땐 이 명령어를 사용하면 된다.brew services list
: MongoDB가 현재 작동 중인지 확인하고 넘어가도록 하자.
mongo
MongoDB 시작 —> 설치 및 실행이 문제 없이 이뤄졌다면 mongo shell 화면으로 전환된다.
보다 구체적인 설명은 공식문서를 참고하자.
MonogDB 계정 생성(root 계정)
mongo shell에 들어오면 가장 먼저 MongoDB 계정을 생성해야 한다. 생성할 계정은 크게 두 가지다. 하나는 모든 권한을 지닌 root 계정이고, 다른 하나는 생성된 데이터베이스를 읽고 쓰는 권한을 가진 일반 사용자 계정이다. 우선 root 계정을 생성토록 하자.
use admin
: admin 데이터베이스를 사용
db.createUser( { user: "mongo", pwd: "password123", roles: ["root"] })
: 사용 중인 데이터베이스에 root 계정 추가
root 계정으로 mongo shell 접속하기
mongo admin -u 아이디 -p 비번
: root 계정으로 shell에 접속MonogDB 계정 생성(일반 사용자)
use db 이름
: db 생성 및 사용
show dbs
: 현재 생성된 db 목록 확인db;
현재 사용 중인 db 확인db.createUser({ user: "youruser", pwd: "yourpassword", roles: [{ role: "dbOwner", db: "사용 중인 db 이름" }] })
: 현재 사용 중인 db를 읽고 쓸 수 있는 일반 사용자 계정 생성
db;
명령으로 현재 사용 중인 데이터베이스가 무엇인지 확인하는 게 좋다.db.dropUser("username")
: 계정 삭제 명령db.getUsers()
: 현재 데이터베이스의 사용자 출력MongoDB 인증 기능 추가 및 외부 접속 허용하기
vim /opt/homebrew/etc/mongod.conf
: mongodb.conf 파일에 접근하자. Apple M1 Mac 사용자가 아니라면, /usr/local/etc/mongod.conf
경로에서 찾을 수 있다.security:
authorization: 'enabled'
bindIp: 127.0.0.1
를 다음 코드로 변경net:
port: 27017
bindIp: 0.0.0.0
brew services restart mongodb-community@4.4
MongoDB 재활성화netstat -anv|grep LISTEN
: MongoDB 실행 여부 확인 mongo db이름 -u 아이디 -p 비밀번호
: MongoDB 접속mongo subway -u root -p 12341234
MongoDB Collection 생성 및 Compass 설치
db.createCollection(name,[options])
: Collection 생성
db.createCollection("subway_stations")
db.Collection 이름.drop()
Compass란?
terminal 환경에서 MongoDB를 사용할 때 겪는 불편함을 덜어줄 수 있는 MongoDB GUI tool이다. Compass를 활용하면 DB Collection 조회, 추가, 삭제부터 Document의 CRUD에 이르기까지 보다 쉬운 데이터베이스 관리가 가능해진다.
여기서부턴 Compass나 mongo shell을 이용하여 사용자의 입맛에 맞게 document(RDBMS의 데이터 row에 해당)를 추가하는 등의 DB 구축을 해 나가면 된다!!!
👉 다음 글에선 Mongoose 설치 및 사용 방법에 대해 다루겠습니다.
몽고db에 대해 아무것도 모르는데 맥북에 설치하려고 애 먹다가 이 글보고 한번에 잘 설치했습니다..!
감사합니다