しゅがーブログ

技術ネタとか書いていけたらな…

【MongoDB】特定のcollectionをdumpしてrestoreする方法

特定のcollectionのみをdump

下記コマンドを実行するとカレントディレクトリにdumpフォルダが生成される。

mongodump -d hogehoge_db -c hogehoge_collection1 --out dump
mongodump -d hogehoge_db -c hogehoge_collection2 --out dump
mongodump -d hogehoge_db -c hogehoge_collection3 --out dump

こんな感じ

current directory
├── dump
   ├── hogehoge_db
      ├── hogehoge_collection1
      ├── hogehoge_collection2
      ├── hogehoge_collection3

既存collectionを完全に入れ替えたい場合は、--dropオプションを追記する。
詳細は公式リファレンスを参照

mongorestore --drop dump

すると既存のcollectionデータは消えて、新しいデータでrestoreされる。

補足

dockerコンテナ上で動作しているMongoDBにデータを取り込む方法 ホストからコンテナへdumpしたデータをコピー

docker cp dump コンテナID:/dump

参考 https://qiita.com/gologo13/items/7e4e404af80377b48fd5