将mongodb导出到json

时间:2015-02-25 03:34:02

标签: json mongodb

我的mongodb中有很多数据,我想将整个数据导出到json,其中每个文件不超过500 kb(较小的文件),例如:

exported_file.1.json
exported_file.2.json
...

我知道我可以使用mongoexport将数据从mongodb导出到json但是它会产生一个大的json文件,所以有没有办法将整个mongodb导出到多个小json文件,这样每个文件都会是低于500kb?

1 个答案:

答案 0 :(得分:0)

您可以使用shell脚本并通过mongoexport选项--skip--limit来执行此操作,因此基本上可以限制每个文件中的文档数量,并使用skip作为偏移量。

如果您的总数是500万条记录,则是这样的:

limit=10000;
skip=0;
for i in {1..500}; do mongoexport --db your_db --collection your_collection --type=json --fields "the fields you want to include in the export" --out exported_file.${i}.json -v --skip ${skip} --limit ${limit} --quiet;
let skip=$((skip+limit));
done