汐留みずほ-2018年10月22日こんにちは、汐留みずほです。個人的に管理しているシステムで、MongoDBに触る機会があったので、書き残しておこうと思います。MongoDBのデータ出力ツールMongoDBのデータ出力ツールに、mongodumpとmongoexportとがあります。mongodumpはBSON形式というバイナリデータで出力し、インデックスなども含めたデータベースの情報を完全に含むためバックアップとして活用できます(リストアにはmongorestoreというツールを使用します)。mongoexportはCSVまたはJSONのテキストデータで出力します。データそのものをテキストとして扱ったり、他のツールとの連携用に使用するのに向いているようです(対となるツールとしてはmongoimportというものがあります)。本記事ではmongodump/mongorestoreを使ったバックアップとリストアの手順、mongoexportを使ったエクスポートの手順について紹介します。以下の前提で記載します。MongoDBのインストールされているホスト上で実行MongoDBのポート番号は変更していないmongodumpでバックアップ/リストア以下のコマンドでDBのバックアップが取得できます。Namedumpというディレクトリが作成され、その中にbsonファイルとjsonファイルが生成されます。filesbsonファイルがデータ本体のバイナリファイル、jsonファイルはコレクションごとのメタデータが入ったテキストファイルです。後述するmongoexportで出力されるjsonファイルとは異なるものです。以下のコマンドでdumpからMongoDBへのリストアを実行します。Namemongoexportでエクスポート以下のコマンドでコレクションを指定したエクスポートを実行します。output.csvまとめ今回はオプションの細かい解説などは省きました。詳細は以下の公式ドキュメントを参考になさってください。~バーチャルをリアルでやった結果......編~次の記事【第2回】「Guzzle」でAPI通信やスクレイピングを使いやすく汐留みずほネットワークが専門のインフラエンジニアです。最近はプログラミング教材に興味があります。エンジニアブログです。業務の内外で得たノウハウやソースコードなど、WEB系開発・インフラエンジニアに向けてお役立ち情報を公開しています。本連載ではComposerで公開されているパッケージの中から、フレームワークを問わず汎用的に使えるライブラリをサンプルコードと共に紹介します。本連載ではComposerで公開されているパッケージの中から、フレームワークを問わず汎用的に使えるライブラリをサンプルコードと共に紹介します。本連載ではComposerで公開されているパッケージの中から、フレームワークを問わず汎用的に使えるライブラリをサンプルコードと共に紹介します。