導入とmongoimportをMongoDBのmongoexport

環境:mongodb3.6.16バイナリインストール

A、mongoexportパラメータと構文の説明:

コレクションmongoexportツールでMongoDBは、ファイル形式JSONまたはCSV形式にエクスポートすることができます。導出されたパラメータは、データ項目で指定することができ、データは、指定された条件に従って導出することができます。

mongoexport -h IP --portポート-uユーザ名-pパスワード-dデータベーステーブル名-f -c -qフィールド条件のエクスポート--csv -oファイル名

-hホストはIPのデータベースを示す
データベースのユーザ名-u指定
-pパスワードデータベースが指定した
指定したデータベース名-d
指定されたコレクション名-cは
コンマにエクスポートするこれらの列を指定する-fは、-f UIDを分離、名前、年齢はUID、名前、年齢三つのフィールド派生
エクスポートするファイル名を示すために-o
「{: 『UID』 -qフィルタ基準エクスポートデータを指定し、-q 『100』}」 uidのエクスポートデータ100を
-型指定ファイルタイプの
名前は、検証データを--authenticationDatabase

テーブル全体のデータをエクスポートします:

[root@localhost ~]# mongoexport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c mumu  -o ./1.dat
2020-01-05T11:54:48.956+0800    connected to: 127.0.0.1:6068
2020-01-05T11:54:48.956+0800    exported 3 records

[root@localhost ~]# cat 1.dat 
{"_id":{"$oid":"5e0f162d1083b09e85237cb4"},"name":"小花","年级":"二年级","性别":"男","爱好":"学习"}
{"_id":{"$oid":"5e0f161d1083b09e85237cb3"},"name":"小花","年级":"二年级","性别":"男","爱好":"学习"}
{"_id":{"$oid":"5e0f16191083b09e85237cb2"},"name":"小花","年级":"二年级","性别":"男","爱好":"学习"}

エクスポートデータテーブル指定したフィールド:

[root@localhost ~]# mongoexport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c mumu -f name,'年级','性别' -o ./2.dat
2020-01-05T11:55:41.187+0800    connected to: 127.0.0.1:6068
2020-01-05T11:55:41.187+0800    exported 3 records
[root@localhost ~]# cat 2.dat 
{"_id":{"$oid":"5e0f162d1083b09e85237cb4"},"name":"小花","年级":"二年级","性别":"男"}
{"_id":{"$oid":"5e0f161d1083b09e85237cb3"},"name":"小花","年级":"二年级","性别":"男"}
{"_id":{"$oid":"5e0f16191083b09e85237cb2"},"name":"小花","年级":"二年级","性别":"男"}

エクスポートしたCSV形式のデータテーブル指定したフィールド:

[root@localhost ~]# mongoexport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c mumu --type csv -f name,'年级' -o ./3.csv
[root@localhost ~]# cat 3.csv 
name,年级
小花,二年级
小花,二年级
小花,二年级
[root@localhost ~]# mongoexport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c mumu --csv -f name,'年级' -o ./1.csv
2020-01-05T11:58:56.598+0800    csv flag is deprecated; please use --type=csv instead
2020-01-05T11:58:56.599+0800    connected to: 127.0.0.1:6068
2020-01-05T11:58:56.600+0800    exported 3 records
[root@localhost ~]# cat 1.csv 
name,年级
小花,二年级
小花,二年级
小花,二年级

輸出JSON形式のファイルは、デフォルトはJSON形式のデータファイルをエクスポートすることです:

[root@localhost ~]# mongoexport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c mumu --type json -f name,'年级' -o ./2.json
2020-01-05T12:01:28.951+0800    connected to: 127.0.0.1:6068
2020-01-05T12:01:28.951+0800    exported 3 records
[root@localhost ~]# cat 2.json 
{"_id":{"$oid":"5e0f162d1083b09e85237cb4"},"name":"小花","年级":"二年级"}
{"_id":{"$oid":"5e0f161d1083b09e85237cb3"},"name":"小花","年级":"二年级"}
{"_id":{"$oid":"5e0f16191083b09e85237cb2"},"name":"小花","年级":"二年级"}

状況に応じてデータのエクスポート:
劇中のレコードの趣味番号:

[root@localhost ~]# mongoexport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c chenji -q '{"爱好":"打球"}' -o ./daqiu.json
2020-01-05T12:10:21.788+0800    connected to: 127.0.0.1:6068
2020-01-05T12:10:21.788+0800    exported 2 records
[root@localhost ~]# cat daqiu.json 
{"_id":{"$oid":"5e1160a3ef45ab936b74982a"},"name":"李四","年级":"一年级","性别":"女","爱好":"打球"}
{"_id":{"$oid":"5e116102ef45ab936b74982d"},"name":"赵武","年级":"五年级","性别":"男","爱好":"打球"}

二、導入mongoimport構文とパラメータ:

このツールは、MongoDBは指定されたコレクションに特定のファイル形式のコンテンツをmongoimportことがあります。データJSON形式をインポートできるツールは、CSV形式のデータをインポートすることができます。

パラメータの説明:
-hホストデータベースは、IPで指定された
データベースのユーザ名-u指定
-pパスワード指定されたデータベース
-dデータベース名で指定
-c指定されたコレクション名は
、あなたがそれらのエクスポートしたい列を指定-f
-oをエクスポートするかを示しますファイル名
-q指定されたエクスポートデータフィルタは
--drop前に、インサートを取り外す必要があります
--headerlineは、最初の行に列名をインポートする必要はありませんであることを示しています。
-J動作オペランド(デフォルト1)、パラレル挿入しながら
名検証データを--authenticationDatabase

[エクスポートデータ、および内部のテーブルに戻る:
データのエクスポート:

[root@localhost ~]# mongoexport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c fenshu   -o ./111.bat
2020-01-05T12:46:21.264+0800    connected to: 127.0.0.1:6068
2020-01-05T12:46:21.265+0800    exported 8 records

テーブルの内側に戻ります:

[root@localhost ~]# mongoimport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c fenshu --drop ./111.bat
2020-01-05T12:50:07.154+0800    connected to: 127.0.0.1:6068
2020-01-05T12:50:07.154+0800    dropping: dbtest002.fenshu
2020-01-05T12:50:07.181+0800    imported 7 documents

フィールドのデータテーブルの一部をご紹介:
指定したフィールドは、派生しました:

[root@localhost ~]# mongoexport -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c fenshu --type json -f name,'年级' -o ./222.bat
2020-01-05T12:57:16.030+0800    connected to: 127.0.0.1:6068
2020-01-05T12:57:16.030+0800    exported 7 records

プライマリキーテーブルの指定フィールドを導入する際に競合を避けるため、追加のパラメータには、--drop

[root@localhost ~]# mongoimport   -h 127.0.0.1:6068 -u root -p TdLLQ6689 --authenticationDatabase admin -d dbtest002 -c fenshu  --upsertFields name,'年级' --drop ./222.bat 
2020-01-05T12:58:22.422+0800    connected to: 127.0.0.1:6068
2020-01-05T12:58:22.428+0800    imported 7 documents

おすすめ

転載: blog.51cto.com/wujianwei/2464448
おすすめ