mongoimport の動作、アクセス、使用方法
警告
データのインポートおよびエクスポートでの ($) と (.) の競合
MongoDB 5.0以降、ドキュメントフィールド名の前にドル記号( $
)を付けたり、ピリオド文字( .
)を含めたりすることができます。 ただし、 mongoimport
とmongoexport
は、それらの文字を使用するフィールド名では機能しません。
MongoDB Extended JSON v 2は、type wrapper と、type wrapper と同じ名前を持つフィールドを区別できません。 対応する BSON 表現に( $
)プレフィックス付きキーが含まれる可能性があるコンテキストでは、拡張 JSON 形式を使用しないでください。 DBRefメカニズムは、この一般ルールの例外です。
フィールド名で( .
)とともにmongoimport
とmongoexport
を使用することにも制限があります。 CSV ファイルではデータ階層を表すのに( .
)が使用されるため、フィールド名の( .
)はネストのレベルと誤解されます。
動作
タイプの忠実度
を使用して完全なインスタンスバックアップを実行するときに、すべての豊富な BSON データ型を保持する必要がある場合は、 Extended2 0mongoexport
JSON v を指定してください。 次の方法で、 (標準モード) から オプションへ--jsonFormat
mongoexport
を使用します。
mongoexport --jsonFormat=canonical --collection=<coll> <connection-string>
--jsonFormat
が指定されていない場合、 はmongoexport
拡張 JSON v2 0にデータを出力します。 デフォルトでは (緩和モード) 。
mongoimport
は、復元時に指定されたターゲット データファイルにあるJSON形式を自動的に使用します。 たとえば、 Extended JSON v2 0mongoexport
--jsonFormat=canonical
が使用されます。 ターゲット データ エクスポート ファイルが を指定して によって作成された場合、 (標準モード) 。
JSON Format
mongoimport
では、インポート データが Extended JSON v2.0 (標準) または 拡張 JSON v2 0のいずれかである必要があります。 デフォルトでは (緩和) 形式。Extended JSON v 1を使用して形式されたデータをインポートする場合。 0 、 --legacy
オプションを指定する
Tip
一般に、 mongoexport
とmongoimport
のバージョンは一致する必要があります。 つまり、 mongoexport
から作成されたデータをインポートするには、対応するバージョンのmongoimport
を使用する必要があります。
ドキュメントの順序
デフォルトでは、 mongoimport
はランダムな順序でドキュメントを挿入できます。 復元プロセス中にドキュメント順序を維持するには、 --maintainInsertionOrder
を使用します。
エンコーディング
mongoimport
は UTF-8 でエンコードされたデータファイルのみをサポートします。他のエンコードを使用すると、エラーが発生します。
FIPS
mongoimport
は 、FIPS モードを使用するように構成さ れたmongod
/mongos
への FIPS 準拠の接続を自動的に作成します。
書込み保証 (write concern)
--writeConcern
オプションと--uri connection string
オプションの両方で書込み保証を指定した場合、 --writeConcern
の値が URI string で指定された書込み保証よりも優先されます。
バッチ
mongoimport
は、最大バッチ サイズ 100,000 を使用して、一括挿入/アップサート操作を実行します。
必要なアクセス権
mongod
オプションを使用して認証を適用する--auth
に接続するには、--username
オプションと--password
オプションを使用する必要があります。接続ユーザーは、少なくともデータをインポートするデータベースに対してreadWrite
ロールを持っている必要があります。