소프트웨어/MongoDB

몽고DB 덤프 수집(mongoDB)

G. Hong 2019. 2. 7. 12:29
728x90
반응형

몽고DB에서 mongodump를 사용하면 DB의 컨텐츠들을 내보낼  수 있습니다.

DB의 데이타를 백업할 때, DB의 내용을 분석하기 위해서 외부로 반출이 필요할 때 사용할 수 있는 기능입니다.

 

mongodump기능을 mongorestore와 함께 사용하면 DB를 백업하는 도구로도 사용이 가능합니다. 하지만  shared cluster나 replica sets 환경에서는 정상적으로 복구가 되지 않을 수 도 있으니  주의하여서 사용하여야 합니다. 

(mongodb 백업에 관한 문서 : https://docs.mongodb.com/manual/core/backups/) 

 

아래의 화면은 제가 mongoDB의 모든 db들을 백업한 화면입니다.

--out옵션을 통해서 tmp/mongodb 폴더에 저장이 되도록 하였습니다.

 

mongodump 옵션들은 --help 옵션을  통해서 확인이 가능합니다.

# mongodump --help

 

아래는 주로 사용되는 옵션들과 사용 예시입니다.

Collection 덤프 수집

mongodump  --db test --collection collection

 

특정 collection을 제외한 덤프 수집

mongodump  --db test --excludeCollection=users --excludeCollection=salaries

 

접속권한이 필요한 덤프 수집

mongodump --host mongodb1.example.net --port 37017 --username user --password "pass" --out /opt/backup/mongodump-2011-10-24

 

아카이브파일로 덤프파일 내보내기

mongodump --archive=test.20150715.archive --db test

 

아카이브를 Standard Output으로 출력

mongodump --archive --db test --port 27017 | mongorestore --archive --port 27018

* --archive 옵션은 --out 옵션과 함께 사용할 수 없습니다.

 

압축하여 덤프 수집

mongodump --gzip --db test

 

아카이브된 파일을 압축기능과 함께 사용

mongodump --archive=test.20150715.gz --gzip --db test

 

 

관련 문서: https://docs.mongodb.com/manual/reference/program/mongodump/ 


Q. 덤프수집시 아래와 같은 에러가 발생 할 경우.

Failed: error connecting to db server: server returned error on SASL authentication step: Authentication failed.

 

A. --authenticationDatabase 옵션을 통해서 접근권한이 있는 DB를 지정.

mongodump -u admin -p password --authenticationDatabase admin --db license-server --out /root/mongodump -v

728x90
반응형

'소프트웨어 > MongoDB' 카테고리의 다른 글

몽고DB(MongoDB) recover기능으로 복구하기  (0) 2020.04.08