向MongoDB Atlas云集合导入JSON时出现SyntaxError语法错误
错误根因
mongoimport 是MongoDB官方独立的命令行工具,不属于mongosh交互环境的内置指令。你在已经登录成功的mongosh交互界面(即命令行前缀为<Atlas identifier> [primary] <database> >的状态)中执行mongoimport命令,mongosh会将其识别为JavaScript语法进行解析,因此会抛出语法错误,和你填写的文件路径没有关联。
正确操作流程
- 先退出当前mongosh交互环境:在当前界面输入
exit回车,回到系统原生CMD命令行界面。 - 直接在JSON文件所在目录的CMD中执行导入命令,无需提前登录mongosh,推荐使用URI拼接的简化写法,同时修正你原命令中的参数错误(
-jsonArray应为--jsonArray,路径前缀的多余斜杠可删除):
mongoimport --uri "mongodb+srv://<username>.ck3ra.mongodb.net/<database>" --collection <目标集合名称> --type json --file <filename>.json --jsonArray --authenticationDatabase admin --username <username> --password <password>
补充注意事项
- 需确保本地已安装MongoDB Database Tools套件,
mongoimport工具默认包含在该套件中,未安装的话需先完成对应版本的安装再执行命令 - 执行导入前需确认MongoDB Atlas的访问控制设置中,已将你当前设备的公网IP加入IP白名单,否则会触发连接失败报错
- 如果未手动指定
--collection参数,mongoimport会默认使用JSON文件的文件名作为集合名,建议手动指定目标集合避免导入位置错误
内容的提问来源于stack exchange,提问作者Yafim Simanovsky
相关产品推荐
相关产品推荐

