如何将数据导入到mongoDB中
如何将数据导入到mongoDB中
我正在尝试导入一个大型的JSON格式的数据文件。我正在使用以下命令导入数据:\nmongoimport --db verbs --collection de --file \"/Users/marcelbraasch/Downloads/de.json\"
\n数据导入正在进行,但是我遇到了以下异常:\n
\n失败:(未授权)未被授权在verbs上执行命令{ insert: \"de\", ordered: false, writeConcern: { w: \"majority\" }, $db: \"verbs\" }\n
\n我已经尝试了以下组合:\nmongoimport -h localhost:27017 -u \'user\' -p \'password\' --db verbs --collection de --file \"/Users/myname/Downloads/de.json\"
\n但是没有一个有效。我的Mongo实例是在Docker容器中运行的,如果这个信息有所影响,我需要做什么?
在处理相同问题时,我遇到了困难,但是添加关键词--authenticationDatabase对我很有帮助。
运行以下命令来将数据导入MongoDB:
mongoimport --authenticationDatabase=admin --username=--password= --db= --collection= --type= --file=
确保替换以下参数:
- `
- `
- `
- `
- `
- `
通过添加关键词--authenticationDatabase并提供MongoDB的用户名和密码,可以解决导入数据时的身份验证问题。这将确保你有足够的权限来导入数据。
希望这个解决方法对你有所帮助!
问题出现的原因是缺少关键字`authenticationDatabase`,解决方法是在mongoimport命令中添加`--authenticationDatabase`参数,并指定数据库的名称。
具体命令如下:
mongoimport --db 数据库名 --collection 集合名 --authenticationDatabase admin --username 用户名 --password 密码 --drop --file 文件路径
其中,`数据库名`为需要导入数据的数据库名称,`集合名`为需要导入数据的集合名称,`用户名`和`密码`为mongoDB的登录信息,`文件路径`为需要导入的数据文件的路径。
参考链接:
[https://docs.mongodb.com/guides/server/import/](https://docs.mongodb.com/guides/server/import/)