web-dev-qa-db-ja.com

mongodumpとmongoexportの違いは何ですか?

データベースとコレクションレベルで完全バックアップを取る必要がある場合、mongodumpを使用しますが、mongodumpを使用すると特定のレコードのバックアップも取得できるため、mongodumpとmongoexportの違いは何ですか?

6
yogesh.j

mongodumpは、データのバイナリコピーを生成します。それはより良い、より効率的なバックアップを作成します。

mongoexportはJSONファイルを作成できます。これらは他のプログラムで使用でき、基本的には人間が読める形式です。

10
Adrian Rivelli

MongoDB BOL こちら に従って、mongodumpはデータベースの内容のバイナリエクスポートを作成するためのユーティリティです。 mongodumpは、mongodまたはmongosインスタンスからデータをエクスポートできます。 mongodumpはデータベース内のドキュメントのみをキャプチャします。結果として得られるバックアップはスペース効率に優れています。デフォルトでは、mongodumplocal databaseの内容をキャプチャしません。

version 3.4で変更:MongoDB 3.4読み取り専用ビューのサポートが追加されました。デフォルトでは、mongodumpview’s metadataのみをキャプチャします。ビューに含まれているドキュメントのバイナリエクスポートは作成されません。ビュー内のドキュメントをキャプチャするには、--viewsAsCollectionsを使用します。

MongoDBドキュメント Here mongoexportは、[〜#〜] json [〜#〜]または[〜#〜を生成するユーティリティです。 ] csv [〜#〜] MongoDBインスタンスに保存されているデータのエクスポート。 mongoシェルではなく、システムコマンドラインからmongoexportを実行します。

mongoexportに必要なアクセス

  1. mongoexportには、ターゲットデータベースで読み取りアクセスが必要です。

  2. 接続するユーザーが、少なくともターゲットデータベースの読み取りロールを持っていることを確認してください。

  3. 認証を適用するmongodまたはmongosに接続する場合は、configured authentication mechanismに基づいて必要なセキュリティパラメータを必ず使用してください。

警告:フルインスタンスの本番環境のバックアップでは、mongoimportおよびmongoexportの使用を避けます。 JSONはBSONでサポートされるタイプのサブセットのみを表すことができるため、すべてのリッチBSONデータタイプを確実に保持するわけではありません。この種類の機能については、 MongoDBバックアップメソッド のようにmongodumpおよびmongorestoreを使用します。

2

ここ

mongodumpは、データベースの内容のバイナリエクスポートを作成するためのユーティリティです。 mongodumpは、完全バックアップ、部分バックアップ、本番からステージング/開発への同期、ストレージエンジンの変更に使用されます。

0