mongoDB Atlas 가입 방법(무료 mongo DB 클라우드 서비스)

https://mongodb.com 에서 무료로 온라인 Mongo DB를 생성해 봅시다(계정당 0.5GB DB 무료). 생성된 DB는 connection string을 사용해 각종 프로젝트에 사용할 수 있습니다.

https://www.mongodb.com/cloud/atlas 에 접속합니다.

Start Free 버튼을 누릅니다.

자신의 정보를 입력하고 Get Start Free 버튼을 누릅니다.

여기서 팝업창이 뜨는 경우도 있고 여러가지 다른 화면이 나오는 경우도 있는데, cluster를 create 하는 버튼이 나오므로 잘 찾아서 클릭합니다. 지금 화면에 보이는 것 처럼 설정을 바꿀 수도 있는데, 무료인 설정도 있고 유료인 설정도 있으므로 자신의 목적에 맞게 잘 선택하면 되겠습니다.

왼쪽 하단에 Get Started라는 버튼이 떠있는데, 이걸 누르면 처음에 DB를 어떻게 설정하는지 가이드가 나옵니다. cluster는 build하였고, database user를 생성할 차례입니다.

왼쪽 Database Access 메뉴를 선택하고 오른쪽의 Add New User 버튼을 누릅니다. 처음에 입력한 email과 비밀번호는 mongodb.com을 이용하기 위한 회원가입이고, 여기서의 user는 DB를 사용하기 위한 user입니다. 별개의 계정인 것이죠.

이렇게 팝업이 뜨는데, username과 password를 설정하고 Add User 버튼을 누릅니다. 이 username과 password는 DB connection string을 만들 때 사용되므로 잘 기억해 두시기 바랍니다.

다음으로 IP whitelist를 설정합니다. 보안을 위해 username과 password가 있더라도 아무 IP에서나 접속할 수 없고, 지정된 IP에서만 DB에 접근할 수 있게 하는 설정입니다. mongoDB Atlas는 이 설정하지 않으면 DB를 사용할 수 없습니다.

Allow Access From Anywhere 버튼을 누르면 자동으로 0.0.0.0/0이 입력됩니다. 이렇게 설정하면 아무 IP에서나 접속할수 있습니다. 물론 연습용인 경우에만 이렇게 설정을 하시고, 실제 사이트에서 사용하려면 이렇게 설정하면 안됩니다.

이제 DB를 사용할 준비가 모두 되었습니다. 왼쪽 메뉴에서 Clusters를 누르고 Connect 버튼을 누릅니다.

여러가지 방법으로 DB에 접속할 수 있는데, 우리는 Conect Your Application 버튼을 눌러 connection string을 얻도록 합시다.

어떠한 환경에서 사용할지를 설정하는데, 우리는 node.js를 사용하고, 버전은 3.0 이후의 버전을 사용하고 있습니다. 그리고 connection string이 표시되는데, 초록색으로 표시된 부분을 사용할 DB username과 password로 바꾸어 주어야 합니다.(password는 <와 >를 까지 지우고 비밀번호를 입력해야 합니다.

만약 username이 test_username이고, password가 test_password라면, connection string은 다음과 같은 형태가 됩니다.

mongodb+srv://test_username:[email protected]/test?retryWrites=true&w=majority

위 connection string은 참고용으로 실제 접속은 안됩니다. 자신의 화면에 뜬 텍스트를 수정하여서 사용합시다.

댓글

서강혁 2019.06.06
안녕하세요 글 잘보고있습니다! 질문드릴게있는데 위 예시를든 connection string 을 몽고db 연결할때 환경변수로 쓸 수있나요?
I
Ian H 2019.06.06
@서강혁,
네 mongoDB Atlas의 connection string을 환경변수로 저장하고, 그 환경변수를 사용해서 db연결하시면 됩니다^^
서강혁 2019.06.06
아 한가지 더 질문이있습니다.  현재 mern stack 으로 호스팅을하려는데 이제 mlab을 사용하지못하여  애드온을(heroku addons:create mongolab) 할 수 없는 상황인데 어떤방식으로 디비를 설치해야하는지 .. 기존회원 아이디를 구해서 해야하는건가요
I
Ian H 2019.06.06
@서강혁,
mlab이든 mongoDB Atlas든 addon없이도 그냥 connection string만으로 db연결 가능합니다. heroku app 설정에 보면 환경변수 지정하는 곳이 있는데 거기에 connection string 넣으면 되요.
애드온을 쓰려는 다른 목적이 있는 건가요? 
j
juseong Kim 2019.07.04
안녕하세요. MEAN 스택으로 개발한 홈페이지를 호스팅하려고 하고 있습니다. cafe24 에서 해볼 생각이었는데.. mongo DB 를 지원하지 않는거 같네요?!  몽고디비 사용법을 찾다 여기까지 오게됐는데.. Atlas는 카페24를 지원하지 않는건가요?
I
Ian H 2019.07.05
@juseong Kim,
안녕하세요. connection string만 제대로 입력해 주면 어느 호스팅을 사용하든지 DB를 사용할 수 있습니다.
-
-11 2019.10.04
$ nodemon [nodemon] 1.19.3 [nodemon] to restart at any time, enter `rs` [nodemon] watching dir(s): *.* [nodemon] watching extensions: js,mjs,json [nodemon] starting `node index.js` server on! http://localhost:3000 DB connected
DB 연결은 된 것 같은데
http://localhost:3000/contacts 로 접속하면 {"ok":0,"errmsg":"cannot do raw queries on admin in atlas","code":8000,"codeName":"AtlasError","name":"MongoError"} 에러가 떠요 구글링해서 찾아보는데 환경변수 노드버전을 2.2.12 버전으로 변경해서 넣어보라고 하길래 해봤는데도 같은 에러가 발생하네요 뭐가 문제일까요?
-
-11 2019.10.04
환경변수안에 admin을 지우니까 적용되네요 해결했습니다!
I
Ian H 2019.10.07
@-11,
해결하셨다니 다행입니다^^
감마 2019.12.13
블로그 내용 너무나 잘보고있습니다 ^^ 클라우드를 이용하여 db사용하는데, 몽고쉘을 통해서 디비를 보는 방법이 있을까요? 공식 웹에 쓰여져있는 방법대로 해보니, db나 show collections같은 커맨드를 써도 변화가 없더라구요! 혹시 제가 만든 schema들을 mysql shell같이 터미널로 혹은 웹(sql server app) 으로 볼수있는 방법 툴 좀 알려주시면 좋겠습니다. (혹시나 제가 잘못 이해하고있는 부분이 있다면, 그부분도 설명좀 부탁드리겠습니다.)
I
Ian H 2019.12.13
@감마,
몽고 DB 서버를 설치하시면 몽고쉘이 같이 설치됩니다.  몽고DB 서버 -> https://www.mongodb.com/download-center/community
그리고 아래 문서처럼 클라우드서버에 접속할 수 있습니다. https://docs.mongodb.com/manual/mongo/#start-the-mongo-shell-and-connect-to-mongodb
몽고 DB없이 몽고쉘만 설치하는 법을 찾으려고 해봤는데 공식적으로는 없는 거 같아요..
감마 2019.12.16
@Ian H,
오 그렇군요. 이런식이면, 스키마를 볼수있다는건가요? 제가 지금은 회사라 조금있다 다시 해보겠습니다.
I
Ian H 2019.12.17
@감마,
위 방법으로 Mongo DB를 shell에서 실행할 수 있습니다. Mongo DB는 DB에 스키마가 없습니다. 스키마는 전적으로 DB를 사용하는 프로그램에 의해 관리가 되고, Mongo DB에 data는 Javascript Object형태로 저장됩니다. 즉 데이터마다 원하는데로 항목을 추가하거나 삭제할 수가 있습니다.
u
utoru80 2020.06.20
Replace <password> with the password for the root user. Replace <dbname> with the name of the database that connections will use by default. Ensure any option params are URL encoded.       이렇게 변경되었어요. dbname 아무리 찾아바도 없네요. 다른분들은 어떻게 해결하였나요??
u
utoru80 2020.06.20
Create a free tier cluster by selecting a region  할때요. 미국버지니아 말구  싱가포르나 서울이 더 빠른가요??
u
utoru80 2020.06.20
너무 좋은 정보에 광고 보고 갑니다.
I
Ian H 2020.06.23
@utoru80,
안녕하세요,  mongoDB Atlas 사이트를 살펴보니 회원가입 방법과 처음 db를 만드는 방법이 많이 바뀌었네요. 조만간 강의를 업데이트하겠습니다!
일단 첫번째 질문에 답변을 드리자면, 강의 본문의 밑에서 세번째 사진을 보면 connect 옆에 collections 라는 버튼이 있죠? 그걸 눌러서 이동한 페이지에 잘 살펴보면 Create Database라는 버튼이 있습니다. 그걸로 만드실 수 있습니다!
두번째 region에 관련된 질문은 제가 미국에 있어서 잘 모르겠어요. 이 블로그는 현재 미국버지니아 서버 사용하고 있습니다. 
m
minji kim 2021.05.02
감사합니다 덕분에 엄청나게 큰 도움이 되었습니다!
I
Ian H 2021.05.02
@minji kim,
방문해주셔서 감사합니다^^
흑수의 세상 2021.05.17
안녕하세요. 다른 강의에서도 질문을 여럿 남겼었는데 궁금한 점이 있어서 또 들렸습니다. 친구와 프로젝트겸 ios 앱 개발이 마무리 단계에 접어들면서, 서버도 호스팅하고 디비도 업그레이드를 하려고 합니다. 현재 개발하면서 테스트는 로컬 서버 + 몽고 아틀라스 무료티어를 이용했습니다. 디비를 업데이트하고 데이터를 받아오는 통신이 느린 부분이 몽고 아틀라스 무료티어의 문제라는 이야기를 접해서 M10으로 업그레이드를 하려고 합니다. 처음이라 많이 헷갈리는데, 서버는 aws에 호스팅을 하려고 했는데 다른분께서 'mongodb 아틀라스무료티어 있는데 왜 ec2를..'라는 말씀을 하셔서요. 아틀라스에 서버까지 호스팅이 가능하다는 의미일까요? 저랑 친구는 aws에 호스팅 + mongodb 아틀라스 업그레이드 이렇게 생각하고 있는데 맞는 방향일까요??
I
Ian H 2021.05.17
@흑수의 세상,
안녕하세요! 기억납니다. 지난번에도 앱 속도 때문에 문의 주셨었죠? 로컬db를 사용했을 때와 mongodb atlas를 사용했을 때 속도차이가 있다면 db 차제 속도 이슈일 수도 있으니 유료 db 구매를 고려해 볼 수 도 있죠. 다만 db 성능문제가 아니라 db 위치의 문제일 수도 있으니 mongodb에도 아시아 서버, 북미 서버 등등 무료티어로 먼저 테스트해보세요^^
제가 알기로는 MongoDB는 서버 호스팅을 하지 않습니다. 혹시 모르니 그렇게 말씀하신 분에게 한번 확인해 보세요. 
현재 만들고 계신 프로젝트가 서버나 DB의 리소스를 얼마나 필요로 하는지 제가 알 수 없으므로 뭐라고 조언해드리기는 힘듭니다. 참고로 제 블로그는 heroku 무료 호스팅+ mongodb atlas 무료 db를 사용하고 있습니다.
흑수의 세상 2021.06.13
@Ian H,
안녕하세요. 생각이 나서 들렸어요. 엊그제부로 앱스토어에 런칭을 했답니다.. 종종 여기서 둘러보고 강의 보면서 댓글도 달 잘아주셔서 정말 감사합니다. 혹시라도 나중에 기회되시면 한번 이용해주세요!! 앱스토어에 umpa 검색하시면 이용하실 수 있어요. 음악 취향과 관련된 앱이랍니다. ㅎㅎ 감사합니다. 종종 더 찾아뵙겠습니다.
I
Ian H 2021.06.17
@흑수의 세상,
https://apps.apple.com/ph/app/umpa/id1522428421 이건가요? 미국이라서 그런지 이것밖에 안뜨네요;
흑수의 세상 2021.07.08
I
Ian H 2021.07.10
@흑수의 세상,
와 멋져요! 아이폰이 아니라서 써볼 순 없네요ㅠㅠ 저도 비슷한 앱(취향이 비슷한 음악, 영화등을 찾아주는 앱)을 생각해 본적이 있어요. 내가 선택한 음악이 다른 사람 리스트에 들어 있으면 다른 사람리스트에 있는 노래들이 1점을 얻고 이렇게 모든 사람리스트에 있는 점수들을 더해서 추천을 해주는 방식이죠.. 언제나 생각만 하고 만들진 않고 있습니다. 이 아이디어 쓰고 싶으시면 쓰셔도 되요
u
utoru80 2021.05.18
사이트가 이렇게 활성화되있는데 헤로쿠 무료호스팅에서 유료로 안가셨나요?? 그정도이면 카페24nodejs 호스팅보다 헤로쿠 무료 호스팅이 좋아보이네요. SSl https 도 기본적으로 무료로 셋팅해주고, 헤로쿠를 사용해보아야겠어요.
I
Ian H 2021.05.20
@utoru80,
그렇죠? 헤로쿠 완전히 만족하면서 쓰고 있습니다^^
댓글쓰기

이 글에 댓글을 다시려면 SNS 계정으로 로그인하세요. 자세히 알아보기

UP