您好,登錄后才能下訂單哦!
小編給大家分享一下導出mongodb里數據的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
一、Mongodb導出工具mongoexport
Mongodb中的mongoexport工具可以把一個collection導出成JSON格式或CSV格式(類似于表格的形式)的文件。可以通過參數指定導出的數據項,也可以根據指定的條件導出數據。
mongoexport具體用法
C:\mongo\bin>mongoexport -help options: --help produce help message -v [ --verbose ] be more verbose (include multiple times for more verbosity e.g. -vvvvv) -h [ --host ] arg mongo host to connect to ( <set name>/s1,s2 for sets) --port arg server port. Can also use --host hostname:port --ipv6 enable IPv6 support (disabled by default) -u [ --username ] arg username -p [ --password ] arg password --dbpath arg directly access mongod database files in the given path, instead of connecting to a mongod server - needs to lock the data directory, so cannot be used if a mongod is currently accessing the same path --directoryperdb if dbpath specified, each db is in a separate directory -d [ --db ] arg database to use -c [ --collection ] arg collection to use (some commands) -f [ --fields ] arg comma separated list of field names e.g. -f name,age --fieldFile arg file with fields names - 1 per line -q [ --query ] arg query filter, as a JSON string --csv export to csv instead of json -o [ --out ] arg output file; if not specified, stdout is used --jsonArray output to a json array rather than one object per Line
參數說明:
-h:指明數據庫宿主機的IP
-u:指明數據庫的用戶名
-p:指明數據庫的密碼
-d:指明數據庫的名字
-c:指明collection的名字
-f:指明要導出那些列
-o:指明到要導出的文件名
-q:指明導出數據的過濾條件
二、常用數據導出實例
1、直接導出數據到文件中
代碼如下:
[root@localhost bin]# ./mongoexport -d my_mongodb -c user -o user.dat connected to: 127.0.0.1 exported 2 records [root@localhost bin]# cat user.dat { "_id" : { "$oid" : "4f81a4a1779282ca68fd8a5a" }, "uid" : 2, "username" : "Jerry", "age" : 100 } { "_id" : { "$oid" : "4f844d1847d25a9ce5f120c4" }, "uid" : 1, "username" : "Tom", "age" : 25 } [root@localhost bin]#
命令執行完后使用命令查看,會發現目錄下生成了一個students.dat的文件
參數說明:
-d 指明使用的庫, 本例中為” my_mongodb”
-c 指明要導出的表, 本例中為”user”
-o 指明要導出的文件名, 本例中為”user.dat”
從上面可以看到導出的方式使用的是JSON 的樣式
2、將foo庫中的表t1導出成json格式
代碼如下:
[root@localhost bin]# ./mongoexport -d foo -c t1 -o /data/t1.json connected to: 127.0.0.1 exported 1 records [root@localhost bin]#
導出成功后我們看一下/data/t1.json文件的樣式
代碼如下:
root@localhost data]# more t1.json { "_id" : { "$oid" : "4f927e2385b7a6814a0540a0" }, "age" : 2 } [root@localhost data]#
3、導出為CSV格式的數據
代碼如下:
[root@localhost bin]# ./mongoexport -d foo -c t2 --csv -f age,name -o /data/t2.csv connected to: 127.0.0.1 exported 1 records [root@localhost bin]#
查看/data/t2.csv的導出結果
代碼如下:
mongoexport -h 10.100.30.130 --port 27017 -d zhongtudao -c hand_result --type=csv -f datetime,url,show_count,click_count -q '{datetime:"20170402"}' -o ./20170402.csv
4、指定過濾條件導出數據:
-q 參數的使用方法是:-q '{key:"value"}'
代碼如下:
mongoexport -h 10.100.30.130 --port 27017 -d zhongtudao -c hand_result --type=csv -f datetime,url,show_count,click_count -q '{datetime:"20170402"}' -o ./20170402.csv
看完了這篇文章,相信你對導出mongodb里數據的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。