MongoDb使用重定向操作符将JSON数据导入集合



我已经使用下面的docker compose文件在我的机器上设置了"mongo"DB。

version: "3.1"
services:
mongo:
image: mongo
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: example
volumes:
- ${PWD}/data:/usr/src/data

现在,我想使用以下命令将样本数据插入到名为books的集合中

mongo books < booksJson.js

但是当我执行这个命令时,我得到了以下错误

MongoDB shell version v4.4.1
connecting to: mongodb://127.0.0.1:27017/books?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("57936227-aa22-4d5f-841b-59788847bc3c") }
MongoDB server version: 4.4.1
WriteCommandError({
"ok" : 0,
"errmsg" : "command insert requires authentication",
"code" : 13,
"codeName" : "Unauthorized"
})
bye

以下是我的booksJson.js文件的内容。

db.books.insert([
{
title: 'xyz',
test: 1
}
])

有任何关于如何使用mongo.exe使用JavaScript文件和重定向运算符导入JSON数据的指针吗

@Prasad的注释/指针帮助找到了解决方案。

我可以使用以下命令导入数据。

mongo localhost:27017/bookdb  --authenticationDatabase "admin" -u root -p example  < booksJson.js

为了让它发挥作用,我不得不提到authinticationDatabase标志。

最新更新