1.mongoexport工具
mongoexport工具,即:mongoexport.exe
位于mongo/bin目录下:
2.使用
在cmd.exe中进入安装mongo的bin目录,比如我的:cd D:\mongoDB\mongoDB\bin
在此目录下就可以使用mongoexport的命令进行数据导出操作了。
例如我们可以查看mongoexport的命令使用参数,在bin目录下输入:mongoexport --help (注意是两个"-")
我们可以看到具体的参数解释,这里简要说明一下:
参数说明:
-h:指明数据库宿主机的IP
-u:指明数据库的用户名
-p:指明数据库的密码
-d:指明数据库的名字
-c:指明collection的名字
-f:指明要导出那些列
-o:指明到要导出的文件名
-q:指明导出数据的过滤条件
3.复杂条件查询
我们在可视化工具中进行较复杂的查询时,一般这样写:
db.getCollection('rungps').find({"user_id":"98805835","sport_id":"989292c0"})
查询条件为一个json:{"user_id":"98805835","sport_id":"989292c0"}。我们注意到上面的参数 -q(指明导出数据的过滤条件),我们在-q参数后面可以跟一个json,作为导出数据的过滤条件。但是我在导出过程中出现了问题。
我的语句1:
mongoexport -h xxx --port xx -u xx -p xx -d xx -c xx --type=json -q {"user_id":"98805835"} -o D:\mongoDataJson\run.json
报错:
我的语句2:mongoexport -h xxx --port xx -u xx -p xx -d xx -c xx --type=json -q{"user_id":"98805835","sport_id":"989292c0xx"} -out D:\mongoDataJson\run.json
报错:
出现问题的原因,可能是json在shell(cmd.exe)中格式不对,因此我采用读取文件中的json的方式。
我在路径D:\mongoDataJson中创建txt文件:query.txt。在里面写入json:
执行语句:
mongoexport -h xx --port xx -u xx -p xx -d xx -c xx --type=json --queryFile D:\mongoDataJson\query.txt -o D:\mongoDataJson\run.json
完成导入数据到run.json的任务。