본문 바로가기
Programming

MongoDB Atlas 백업 하는 방법 (mongodump mongorestore)

by 개발자 염상진 2022. 9. 29.

 

MongoDB Atlas 백업 하는 방법

 

프로그램을 작성할 때 N-Tier 아키텍처로 서비스를 구성할 때 데이터베이스를 사용한다면 백업 DB구성은 선택이 아니라 필수입니다. AWS의 RDS를 사용하는 경우 snapshot 기능을 지원하지만 MongoDB Atlas를 사용하는 경우 따로 백업 DB를 구성해야 합니다.

 

 

물론 무료 Tier로 제공되는 M0 cluster에 한정된 이야기 입니다. M10 이상의 클러스터를 사용하는 경우 continous cloud backup 기능을 자동으로 지원하므로, 돈주고 사용하면 되지만 우리는 배고픈 개발자입니다. 무료 티어를 사용하는 경우 MongoDB Atlas 백업하는 방법을 알아봅니다.

 

 

 

 

mongodump / mongorestore

 

MongoDB Atlas DB를 백업하기 위해서는 mognodump / mongorestore 명령어를 사용합니다. 사용중인 DB를 백업파일로 저장하면 BSON 형식 파일로 저장됩니다. BSON 파일로 가지고 있는 백업파일을 사용해 Atlas에 DB를 복원할 수 있습니다.

 

🔨️ DB 백업 파일 저장

mongodump --uri "mongodb+srv://<username>:<password>@<cluster address>/<DB_name>?retryWrites=true&w=majority" --out <저장할 로컬경로>

 

위 명령을 실행한 후 지정한 경로로 들어가보면 BSON 형식의 파일이 저장되어 있습니다.

 

 

🐋️ DB 파일 복원

mongorestore --uri "mongodb+srv://<username>:<password>@<cluster>/?retryWrites=true&w=majority" --db <Backup DB 이름> <BSON 로컬 경로>

 

⚠️ 주의사항

주의할 점은 mongodump 명령어를 사용할 때는 백업할 DB를 지정해줘야 하는 반면

mongorestore 명령어를 사용할 때는 DB를 지정해주지 않아도 됩니다. 어차피 cluster에 새로운 데이터베이스가 생기기 때문입니다.

 

MongoDB 백업 명령어 종류

 

① mongodump : Database 단위로 BSON 형식 파일에 데이터를 백업합니다.

② mongorestore : Database 단위로 BSON 형식 파일을 복원합니다.

③ mongoexport : Collection 단위로 데이터를 백업합니다.

④ mongoimport : Collection 단위로 데이터를 복원합니다.

 

 

🚀️ 도움이 되셨다면 구독 + 좋아요 부탁드립니다.

댓글