MongoDBからcollectionの情報を出力するmongoexportについて解説します。
mongoimportと組み合わせることでcsvやjson形式のデータファイルをMongoDBに簡単に入出力できるようになります。
MongoDBのデータをデータファイル形式にしてExcelなどの表計算ソフトで検証することができます。
Contents
mongoexportの使い方
まずはmongoexportの基本的な使い方を説明します。
Linuxのコマンドラインから入力します。(MongoDBへのコマンドを入力するmongoシェルではありません)
mongoexport --port 27017 --db common --username kenne --password kennepassword --collection user --type csv --out /home/kenne/user.csv --fields userName,age
必須のオプションは「–collection (collection名)」です。
–typeはcsvまたはjsonを指定します。
csvファイルの場合は–fieldsが必須項目でカラム名を入力します。カラム名は過不足があっても問題なく動作しますが、一致していない項目はNULLで出力されます。
mongoimportの使い方
mongoimportはcsvやjsonファイルをcollectionに入力することができます。 Linuxのコマンドラインから入力します。mongoimport --port 27017 --db common --username kenne --password kennepassword --collection onehourdata --type csv --drop --file onehourdata.csv --headerline
- –db(データベース名)
- –collection(コレクション名)
- –type(csvまたはjson)
- –file(ファイル名)
のオプションはないと動かないので設定しましょう。
–dropを設定すると今あるcollectionのデータを消してimportできます。
また、csvの場合はヘッダー付の場合、–noheaderlineでcsvの1行目をスキップします。 ヘッダー無しの場合は–fieldsオプションでヘッダー(項目名)を指定します。
公式ドキュメント(mongoexport)(英語)
mongoexportとmongodumpの違い
mongoexportと似たようなコマンドにmongodumpがありますので、違いをまとめておきます。
mongoexportはcsvファイルで出力できる
mongoexportはjsonまたはcsv形式でMongoDBのデータを出力することができるので、ファイル形式でのデータ検証できます。
MongoDBはqueryでデータ抽出を頑張るとfind()文が長くなってしまうので、csv形式でExcelで検証できるのは便利です。
mongodumpはbson(バイナリjson)形式なので、データ検証はできません。
mongodumpはバックアップ運用に便利
mongodumpはdatabase単位(複数collection)でバックアップを取れるので、バックアップ運用が便利です。
mongorestoreと組み合わせるとcollectionごとにリストアできる手軽さもあるので、バックアップはmongodumpを使うように使い分けがオススメです。
MongoDBでmongodumpを利用してバックアップを取得する – Node.jsで暗号資産アービトラージ
mongoexportの使い方まとめ
mongoexportとmongoimportの基本の使い方とサンプルコードを解説しました。
mongoexportはcsvやjson形式でデータを取り出せるので便利です。
バックアップ運用にはmongodumpが簡単に使えるので、使い分けてみましょう。
MongoDBの使い方まとめに戻る。
自作アプリケーションを作るならさくらのVPS が手軽で使いやすいです。MongoDBは軽いので最低料金プランのVPSでも運用できます。【初めてでも簡単!】VPSの比較ランキングでも紹介しています。
コメントを残す