[MongoDB] MongoDB Atlas 무료 배포 및 연결
한 계정에 하나의 클러스터를 무료 요금제로 생성 가능
1. Project 생성
- 새로운 프로젝트 생성

2. Cluster 및 DB 생성
1) Cluster 생성
- 무료 요금제 선택
- 클러스터 이름 설정

2) 사용자 생성 및 추가
- 클러스터 생성 시 자동으로 생성 화면 노출
- Username 및 Password 설정 및 생성
- DB 연결에 필요

- DB 연결에 필요
3) DataBase 생성
- 생성된 클러스터 내에 실제 데이터를 담을 Database와 Collection을 생성

✔ RDB vs NoSQL 용어 차이
| 관계형 DB (RDB) | MongoDB (NoSQL) | 설명 |
|---|---|---|
| Database | Database | 최상위 데이터 저장소 |
| Table (테이블) | Collection (컬렉션) | 데이터(행/문서)들의 집합 |
| Row (행) | Document (문서) | JSON/BSON 형태의 개별 데이터 record |
| Column (열) | Field (필드) | 개별 데이터의 속성 (Key-Value) |
3. 애플리케이션 연결
- 위치: Cluster > Connect > Connect to your application > Driver
- 사용하는 언어와 드라이버 버전을 선택하면 애플리케이션용 연결 URI 자동 생성
- DB 이름이 설정되어 있지 않으면 수동 추가

- DB 이름이 설정되어 있지 않으면 수동 추가
- 사용하는 언어와 드라이버 버전을 선택하면 애플리케이션용 연결 URI 자동 생성
1) application Profile
spring:
data:
mongodb:
uri: ${MONGODB_URI}
2) .env
- 생성한 사용자 정보 및 DB 정보 입력
- Cluster 단위 또는 DB 단위 연결 가능
MONGODB_URI=mongodb+srv://{USER_NAME}:{USER_PW}@{CLUSTER_NAME}.xothlzj.mongodb.net/{DB_NAME}?retryWrites=true&w=majority&appName={CLUSTER_NAME}retryWrites=true: 네트워크 일시 오류 발생 시, 쓰기(Write) 작업을 자동으로 1회 재시도하는 옵션w=majority: 쓰기 작업의 안정성(Write Concern)을 보장하는 옵션
4. IP 접속 허용
- 위치: NETWORK ACCESS > IP Access List
- 배포한 환경 또는 로컬 IP 주소를 화이트리스트 방식으로 관리
- 만료 시간 설정 가능
- 모든 IP 허용 지양

Leave a comment