好的,我正在尝试......将虚拟JSON文件导入MongoDB并收到此错误,谷歌搜索没有产生明确的解释,虽然这个主题是already on here,但还有更多与语法相关的错误。
我认为我的语法还可以,但如果不是,请指出并让我知道。另外我认为另一个问题是我的路径[格式正确]?还是我错过了完全不同的东西。
我不理解错误,因此无法找到合适的英语"解释任何地方自己弄清楚,所以如果你有一个链接请放入我的,我将不胜感激....
错误:
$ mongoimport --jsonArray --collection bank_data /Macintosh HD/Users/Tinus/Downloads/bank_data.json/bank_data.json
2016-09-20T13:23:56.592+1200 error validating settings: only one positional argument is allowed
- :运行OSX - :Mongod开始了 - :使用/ data / db路径并连接到test" All good" - :从单独的shell运行mongoimport
$ mongo --version MongoDB shell version: 3.2.8
$ mongoimport --jsonArray --collection some_data --file /path/path/data.json
$ mongoimport --jsonArray --collection some_data /path/path/data.json
A)同样在添加--file时我得到:不兼容的选项: - file和position argument(s)
答案 0 :(得分:5)
通过引用你的路径
来尝试$ mongoimport --jsonArray --collection bank_data '/Macintosh HD/Users/Tinus/Downloads/bank_data.json/bank_data.json'
错误
error validating settings: only one positional argument is allowed
来自这样一个事实:你的路径包含一个空格,导致将它分成两个独立的参数(如果没有被周围的引号保护)
顺便说一句:您确定自己的路径以'...bank_data.json/bank_data.json'
结尾,而不只是一个'bank_data.json'
吗?
答案 1 :(得分:2)
〜修复〜
A)我直接从root上的新文件夹改变了路径 B)对于任何其他在mac osx上具有相同问题的人 - 在您的路径中输出基本根,在上面的示例中它是[Macintosh HD] 导入工作而不指定它。因此它被改为..
$filter
C)是的,引号是必不可少的,并且还添加了...... D)记住不要在mongo shell中运行它。
再次向DAXaholic竖起大拇指
答案 2 :(得分:0)
即使我将tsv文件导入到数据库(包括--headerline到命令行)时也遇到了同样的问题。请找到用于成功导入tsv文件的整个导入命令
mongoimport --host群集0-碎片0 / cluster0-碎片-00-00-qvmvm.mongodb.net:27017,cluster0-碎片-00-01-qvmvm.mongodb.net:27017,群集0-碎片-00 -02-qvmvm.mongodb.net:27017 --ssl-用户名学习-密码--authentication数据库管理--db node_deploy --collection node_deploy --type tsv --file games.tsv --headerline [注意] 上面的命令是使用mongodb.com
将tsv格式的数据库导入AWS托管的mongodb中答案 3 :(得分:0)
以上解决方案在Windows 10上对我不起作用。我发现解决方案如下:
mongoimport --jsonArray --db=db_name --collection=collection_name --file=file_name.json
导致的结果:
2019-12-29T02:26:50.041-0700 connected to: mongodb://localhost/
2019-12-29T02:26:50.088-0700 2411 document(s) imported successfully. 0 document(s) failed to import.
答案 4 :(得分:0)
这对我有用:
mongoimport --host 172.18.60.1 --port 50000 --db MYDB --collection BUSINESS_FILE --file "/opt/data/JSON/BUSINESS_FILE.json"
P.S。我的端口不是MongoDB的默认端口,因此请确保将mongos端口放在那里,而不是我的50000。
答案 5 :(得分:0)
我也有同样的错误,原因是我在指定选项时出错。我有--collection而不是--collection或-c。以下是对我有用的。
mongoimport --db ShardTestDB-集合测试--host:--jsonArray-文件“
确保文件包含在引号中。