我在存档中有很多 json 文件,我需要每次操作将它们导入 mongo(我认为它可能处于循环中)。你对此有什么想法吗?
问问题
19566 次
4 回答
25
如果您在 Linux/Unix shell 中,您可以尝试
for filename in *; do mongoimport -d mydb -c $filename; done
如果您在 Windows 上:
FOR %i IN (C:\mongodbData\*.json) DO mongoimport --db dbName --collection colection --type json --file %i
于 2014-03-04T09:12:03.573 回答
3
mongorestore 是导入所有导出的 mongodb 文件
cd C:\Program Files\MongoDB\Server\4.0\bin
mongorestore.exe -d <db name> C:\Users\Mike\Downloads\myProject\
但是如果你真的想只导入所有没有 .bson的元json 文件
cd C:\Users\Mike\Downloads\myProject\
FOR %i IN (*.json) DO "C:\Program Files\MongoDB\Server\4.0\bin\mongoimport.exe" --db <db name> --collection %~ni --type json --file %i
这是 Windows 10 上的示例工作
于 2019-01-25T19:35:08.670 回答
3
您需要mongorestore
用于从转储中恢复,由mongodump
http://docs.mongodb.org/v2.6/reference/program/mongorestore/
例如
mongorestore --drop --oplogReplay mongodb/
于 2015-08-17T06:06:59.057 回答
0
你可以使用这个:
FOR %i IN (<data folder>\*.json) DO mongoimport -d <database> -c <collection> --file %i
于 2017-12-17T08:00:46.353 回答