-
MacOS MongoDB 설치 및 실행잡동사니 2021. 12. 21. 19:03
# MongoDB 설치 및 실행하기
https://velog.io/@fcfargo/TIL-MongoDB-Mongoose
1. Hombrew를 통해 MongoDB 설치
// MongoDB 탭 추가 brew tap mongodb/brew // MongoDB 탭이 정상적으로 추가됐는지 확인 —> 터미널 화면에 mongodb/brew가 출력되면 문제 없이 탭 추가가 완료된 것이다. brew tap | grep mongodb - // (맥북에 추가된 전체 탭 목록을 출력) 다음 명령으로도 탭 추가 여부 확인이 가능. brew tap
2. MongoDB 실행
// MongoDB 활성화 (위는 최신 버전, 고정 버전 사용하고 싶으면 @ 사용) brew services start mongodb-community brew services start mongodb-community@4.4 // MongoDB를 비활성화시키고 싶을 땐 이 명령어를 사용하면 된다. brew services stop mongodb-community brew services stop mongodb-community@4.4 // MongoDB가 현재 작동 중인지 확인하고 넘어가도록 하자. brew services list // MongoDB 시작 —> 설치 및 실행이 문제 없이 이뤄졌다면 mongo shell 화면으로 전환된다. mongo
3. MongoDB 계정 생성(root 계정)
- mongo shell에 들어오면 가장 먼저 MongoDB 계정을 생성해야 한다. 생성할 계정은 크게 두 가지다. 하나는 모든 권한을 지닌 root 계정이고, 다른 하나는 생성된 데이터베이스를 읽고 쓰는 권한을 가진 일반 사용자 계정이다. 우선 root 계정을 생성토록 하자.
// admin 데이터베이스를 사용 use admin // 사용 주인 데이터베이스에 root계정 추가 db.createUser( { user: "mongo", pwd: "password123", roles: ["root"] }) // root 계정으로 mongo shell 접속하기 mongo admin -u 아이디 -p 비번
4. MongoDB 계정 생성(일반 사용자)
// db 생성 및 사용 use db 이름 // 현재 생성된 db 목록 확인 show dbs // 현재 사용중인 db 확인 db; // 현재 사용 중인 db를 읽고 쓸 수 있는 일반 사용자 계정 생성 db.createUser({ user: "youruser", pwd: "yourpassword", roles: [{ role: "dbOwner", db: "사용 중인 db 이름" }] }) // 주의 사항: 생성된 계정은 현재 사용 중인 데이터베이스에 대해서만 권한을 갖기 때문에, 계정 생성 전 db;명령으로 현재 사용 중인 데이터베이스가 무엇인지 확인하는 게 좋다. // 계정 삭제 명령 db.dropUser("username") // 현재 데이터베이스의 사용자 출력 db.getUsers()
5. MongoDB 인증 기능 추가 및 외부 접속 허용하기
- 별도의 보안 인증 절차 없이 MongoDB 실행이 가능하다. 문제는 이러한 보안 절차를 생략하게 되면 랜섬웨어 등의 공격에 취약할 수 있다는 점이다. 그러므로 MongoDB를 처음 시작하는 사용자라면 신뢰도 있는 사용자에게만 Server 접속을 허용토록 인증 절차를 추가하는 걸 권장한다. 방법은 아래와 같다.
// mongodb.conf 파일 접근. Apple M1 Mac 사용자가 아니라면, /usr/local/etc/mongod.conf 경로에서 찾을 수 있다. vim /opt/homebrew/etc/mongod.conf // 보안 인증 절차 추가. 다음 코드를 추가 security: authorization: 'enabled' // 외부 접속 허용 및 포트 번호 설정. 기존의 bindIp: 127.0.0.1을 다음 코드로 변경 net: port: 27017 bindIp: 0.0.0.0 // MongoDB 재활성화 brew services restart mongodb-community brew services restart mongodb-community@4.4 // MongoDB 실행 여부 확인 netstat -anv|grep LISTEN // MongoDB 접속 mongo db이름 -u 아이디 -p 비밀번호 ex) mongo subway -u root -p 12341234
6. MongoDB Collection 생성 및 Compass 설치
// Collection 생성 db.createCollection(name,[options]) ex) db.createCollection("subway_stations") cf) Collection 삭제 명령: db.Collection 이름.drop()
# 참고사항
- 설정파일 위치
/usr/local/etc/mongod.conf- 로그 디렉터리 위치
/usr/local/var/log/mongodb- 데이터 저장 위치
/usr/local/var/mongodb'잡동사니' 카테고리의 다른 글
노드로 슬랙 챗봇 만들기 + cloudtype 무료 배포 (0) 2023.04.10 Ubuntu에 react 설치하기 (0) 2021.07.13 GitLab Template 만들기 (0) 2021.04.11 GitLab에서 GitHub로 Repository 옮기기 (0) 2021.04.11 VS Code에서 Snippet 사용법 (0) 2021.04.04