我只是在学习 MongoDB。有没有一种简单的方法可以从 MongoDB 导出/导入数据?
手头的任务很简单:使用 MongoDB Cloud,从集合中复制文档(使用位于 Atlas > Collection 部分中的 Copy Document 按钮),并能够将其导入到我的本地 MongoDB 数据库中。这样做,我得到了以下信息:
{
"_id": {"$oid":"5e666e346e781e0b34864de4"},
"created_at":{"$date":{"$numberLong":"1583771188026"}}
}
尝试使用 db.my_collection.insert()
将其导入到我的本地 MongoDB 中导致我出现以下错误:WriteResult({
"nInserted" : 0,
"writeError" : {
"code" : 52,
"errmsg" : "$oid is not valid for storage."
}
})
所以我已经完成了我的研究,我发现了 MongoDB creates output data in Extended JSON v2.0 (Relaxed mode) by default或在规范模式下。所以文档真的告诉我用于在 MongoDB 中导出的格式本身不支持能够直接导入吗?我做错了什么?
如何直接导入导出的内容?
最佳答案
所以... MongoDB 不支持它自己的导出格式来将数据导入到集合中。
您的问题的解决方案只是更换
{
"_id": {"$oid":"5e666e346e781e0b34864de4"},
"created_at":{"$date":{"$numberLong":"1583771188026"}}
}
为了:{
"_id": ObjectId("5e666e346e781e0b34864de4"),
"created_at":{"$date":{"$numberLong":"1583771188026"}}
}
这样您就可以毫无问题地导入数据。
关于json - 从 MongoDB Cloud 导出到本地 MongoDB ("$oid is not valid for storage."错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62708844/