윈도우는 여러가지 면에 편한 것이, 그냥 설치만 하면, 한 번에 몽고DB가 설치된다.
하지만, Mac환경에서는 다운로드 후 설정을 약간 해 줘야 한다.
1. 설치 준비 및 다운로드
다운로드 사이트 : https://www.mongodb.com/download-center#community
참고문서 (읽어보고 폴더명 몇가지만 참고했습니다. readme 문서만 봐도 충분) : https://velog.io/@rohkorea86/MongoDB%EC%84%A4%EC%B9%98-%EB%A7%A5MAC%EC%97%90%EC%84%9C-%EB%AA%BD%EA%B3%A0%EB%94%94%EB%B9%84-%EC%84%A4%EC%B9%98
위 사이트에 가서, 알맞은 환경을 선택한 뒤 다운로드 받으면 된다. 몽고 DB를 다운로드 받으면, 압축이 풀리지 않은 상태로 다운로드가 되는 데, 다운로드 한뒤 더블클릭을 하면 압축이 풀어 지고, 별도의 설치과정은 필요하지 않다.
그럼에도 이 문서를 만들게 된 것은 약간의 설치 과정이 필요하기 때문이다.
이 문서는 다운로드된 파일들 속 README.txt 파일의 내용을 참고해 작성되었다.
2. 설치파일 이동 및 패스 걸기.
몽고 DB를 이동 시킬 위치 : /usr/local/mongodb
원칙적으로 어떤 폴더로 이동 시켜도 상관은 없다. 대체로 설치파일들은 /usr/local 폴더로 이동시키므로, 나도 여기에 폴더를 만들고 이동 시켰을 뿐이다.
다운로드 파일속에 /bin 폴더속에 실제 몽고DB의 유틸리티 파일들이 들어 있다. 이 파일들만 여기에 옮겨도 좋고, 다운받은 구조 그대로 /usr/local/mongodb 속으로 옮겨도 상관이 없다.
이 문서는 /usr/local/mongodb 폴더속으로 이동을 완료하였다.
이렇게 생성하고 이 폴더에서 몽고DB를 실행하면 사실상 설치는 끝이다. 하지만, 작업이 불편할 것 이므로, 패스를 걸어 주자.
자신의 홈 디렉터리 (cd ~로 이동할 수 있는 폴더)로 이동한 뒤, shift + command + .을 동시에 눌러 감춰진 파일들이 표시되도록 하면, .bash_profile 파일이 있을 것 입니다. (없으면 만들어 주면됩니다.) 이것을 편집기를 이용해 열어 줍니다.
가장 아랫줄에, export PATH=$PATH:/usr/local/mongodb/bin 라고 추가한뒤 파일을 지정합니다. (이 때 sudo 권한을 요구할 수도 있삽니다.)
터미널을 닫고 다시 연뒤 몽고db 헬프를 사용해 보도록 합니다.
$ mongod -help
몽고db 사용 설명이 표시된다면, 패스가 잘 설정된 것 입니다.
3. 실행 폴더 만들기. (/data/db)
이 부분은 readme 파일에 설명이 들어 있지 않지만, 하지 않으면, 몽고db를 실행해도, shutting down with code:100 이라는 메세지를 내며 실행되지 않습니다.
먼저 폴더를 만들어 줍니다.
$ sudo mkdir -p /data/db
그리고, 권한을 줘야 하는데, 먼저 자신의 유저명을 확인합니다.
$ whoami
이렇게 해서 알게된 자신의 계정 이름을 확인해, 아래 명령어를 적절하게 써 넣어 줍니다.
$ sudo chown username /data/db
4. 몽고 db 실행.
$ mongod
이 한 줄로 몽고 DB 실행은 끝 입니다.
mongod 는 데이터 베이스 이고, mongo 는 mongo db에 실제 커맨드를 날리며 실행해 보는 javasciprt sehll 입니다. 혼동하지 않도록 합니다. 여기서 몽고 db 실행이 되지 않는다면, 4번 과정이 잘 되었는지 확인해 보세요.
실행 후 웹 브라우저를 열어. http://localhost:27017 이라 입력하면, 아래와 같은 메시지를 볼 수 있습니다.
5. compass 설치
$ install_compass
이렇게 한 줄 입력하면, compass 다운로드를 시작한다. 그리고 설치 까지 마무리 된다.
6. 권한을 가진 유저만 사용할 수 있도록 설정.
처음 몽고DB를 설치하면, 누구나 DB에 접근해, 작업이 가능하다. 테스트는 문제가 없지만, 실사용에서는 권한별 사용이 가능하도록, 설정을 하고 사용해야 한다.
1) 권한가진 접속자만 허용하기 전, 계정 추가. (변경후에 사용할 관리자 계정을 하나 추가하도록 하자.).
터미널을 열어 mongo 콘솔로 접속하자.
$ mongo
터미널 프롬프트가 > 로 바뀌면 콘솔로 접속한 상태. 2줄을 입력해 관리자를 추가하자.
> use admin
> db.createUser({ user:'이름', pwd: '비밀번호', role:['root']})
2) 권한 가진 접속자만 접속 허용.
주로 vim을 사용할텐데, 어떤 에디터든 상관이 없습니다. /usr/local/etc/mongod.conf 파일을 열어(없으면 생성), 아래 2줄을 추가하고 종료합니다.
security:
authorization: enabled
3) 몽고DB 재시작
$ mongod start
4) 몽고 콘솔로 접속.
mongo admin -u 이름 -p 비밀번호
5) 만약 관리자 접속이 잘 먹히지 않은 경우, mongod -auth 로 시작하면된다.
$ mongod -auth