본문 바로가기

Challenge/trouble shooting || else

몽고DB 개발 환경 설정 및 "There was a problem fetching your clusters." 해결법

728x90
반응형

몽고 db를 시작하기 위해 cluster를 만드려는데 공홈에서 이런 문구가 뜬다.

이런 경우는 대부분이 개발 환경 설정을 완료하지 않아서 발생한다. 따라서 차근차근 개발 환경을 구축해보자.

 


이럴 때는 당신의 계정이 Organizations를 만들었는지 우선 확인해 줘야 한다.

안 만들었다면,

Organizations가 만들어지지 않은 경우


1. 몽고DB Atlas Organization 생성

 

이렇게 몽고 db atlas로 만들어준다.

Atlas 선택


2. Projects 생성

organization이 완성되었다고 끝난 게 아니다. project도 생성해주자. "New Project"클릭

 


절차에 따라 생성하자.

프로젝트 이름을 적자.


3. Database 생성

프로젝트가 생성되면 이런 화면으로 넘어간다. 그럼 database도 만들어주자.

Biild a Database 버튼 누르기.
나는 무료버전으로 만들어 주었다. 맨 오른쪽


4. 클러스터 생성

클러스터 연결할 클라우드를 선택하라는데 사용하고 있는 거 아무거나 해준다.

난 azure를 사용하니까 그걸로 선택하겠다.


위 과정을 다 마치면 내 데이터베이스 안에 클러스터가 생성이 된다.

시간이 한 3분 정도 걸린다.

이렇게 뜨면 생성이 완료된 것이다.

완성


5. Database Access 생성 및 설정

아직 할 게 많다. Database Access를 생성해주자.

Add New Database User 버튼 누르기.


인증 방법을 선택하고 만들어주자. 나는 password로 인증을 할 거임.

유저명과 비밀번호 입력
만들어짐


6. 접속할 ip address 추가

다음은 ip 어드레스 추가하기

Add IP Address 누르기

접속이 가능한 ip주소를 입력한다. ADD CURRENT IP ADDRESS를 누르면 바로 입력이 된다.


7. 사용하고 있는 method(나는 파이썬으로 진행)와 클러스터 연결

IP 주소를 입력했다면 다시 databases로 돌아와서 만든 클러스터를 Connect 버튼을 눌러 연결하자.


나는 파이썬을 사용할 거니까 connect your application 선택


사용 중인 파이 몽고 (파이썬 버전 아님) 버전 선택


파이몽고 버전 확인하는 방법

python -> import pymongo -> pymongo.version

 


8. 작성한 파이썬 코드를 몽고DB 클러스터와 연동

다시 돌아와서 파이썬을 이용해 클러스트에 접속하기 위해서 다음과 같은 코드로 모듈을 받아준다.

$ python -m pip install pymongo[gssapi,aws,ocsp,snappy,srv,tls,zstd,encryption]

 

다음은 파이썬으로 접속하는 코드이다.

자신이 설정한 유저명:비밀번호 그리고 클러스터명을 적고 실행시키면 connect가 된다.

from pymongo import MongoClient
from pprint import pprint

client = MongoClient("mongodb+srv://admin:비밀번호@cluster0.y8b1z.mongodb.net/클러스터명?retryWrites=true&w=majority")
db = client.test

collection = db.get_collection("family")

family_member1 = {"name": "Homer","job": "nuclear safety inspector","likes": ["donut", "beer", "watching TV"]} 

family_member2 = {"name": "Bart","job": "student","likes": ["skate boarding", "itchy and scratchy", "watching TV"]}

data = [family_member1, family_member2] #변수 data에 호머와 바트 저장
result = collection.insert_many(data) #insert_many() 함수로 data에 저장 된 값'들'을 family 컬렉션에 삽입

 

만약 커넥트가 성공적으로 이루어진다면 Browse Collections 버튼을 눌렀을 때,

 

다음과 같이 내가 넣은 데이터가 잘 보이면 성공한 것이다.


부록 "There was a problem fetching your cluseters" 오류 해결

 

이 과정들이 다 성공적으로 완료가 되면, 이렇게 나온 화면이


이렇게 오류 없이 잘 나올 거다.

 

 

 

끝.

728x90
반응형