Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- JavaScript
- Queue
- jest
- flask
- Bull
- Sequelize
- GIT
- MySQL
- 정렬
- AWS
- Python
- react
- OCR
- Nest.js
- 공룡게임
- 자료구조
- nestjs
- MongoDB
- 게임
- Express
- mongoose
- class
- TypeScript
- nodejs
- cookie
- dfs
- typeORM
- Dinosaur
- game
Archives
- Today
- Total
포시코딩
[Docker] MongoDB dump & restore 본문
728x90
우선 mongodump 명령어를 사용할 수 있어야 한다.
나같은 경우도 docker를 통해서 mongodb를 사용하다보니 맥에서 해당 명령어가 없다고 나왔기에 설치를 진행했다.
brew tap mongodb/brew
brew install mongodb-database-tools
dump
mkdir backup
mongodump --uri "mongodb://{username}:{password}@{ip or server address}:27017/{db_name}?authSource=admin" --out backup
`backup` 이라는 폴더를 만든 후 거기에 해당 db dump를 넣게 되는데 bson 확장자 형태로 주르륵 들어간다.
여기서 내가 헤맸던 부분은 mongodb uri에 대해 쿼리스트링으로 authSource=admin을 넣어주지 않아서였음
다른 예시 명령어들은 딱 db까지만 작성해도 다 잘되는듯 싶었으나 이쪽 디비의 설정 때문인지 저 쿼리스트링을 추가해줌으로서
dump file을 받을 수 있었다.
restore
mongorestore --uri "mongodb://{username}:{password}@{ip or server address}:27017/?authSource=admin" --db {db_name} backup/{db_name}
위에서 소개한 dump & restore 방법의 경우 docker 위에서 돌아가는 MongoDB에 대해서도 적용이 가능하단 점이 장점이다.
찾아보면 docker exec을 이용해 dump 뜬 후, cp를 사용해서 가져오는 방법이 많이 나오는데
굳이 그럴 필요 없이 접속 정보를 통해 내 pc로 직접 가져올 수 있다.
728x90