【发布时间】:2017-11-30 11:27:56
【问题描述】:
来自documentation,它说要避免在 BSON 数据类型上使用 mongoexport
警告 避免对完整实例使用 mongoimport 和 mongoexport 生产备份。它们不能可靠地保存所有丰富的 BSON 数据 类型,因为 JSON 只能表示支持的类型的子集 由 BSON。使用 mongodump 和 mongorestore,如 MongoDB 备份中所述 此类功能的方法。
创建了一个名为“testCollection”的集合
> db.testCollection.insert({title: 'MongoDB Overview',
... description: 'MongoDB is magical database',
... by: 'by newbie',
... url: 'http://www.mongodb_cannot_understand_mongoexport.com',
... tags: ['mongodb', 'database', 'NoSQL'],
... likes: 100});
> db.testCollection.find().pretty();
{
"_id" : ObjectId("59524e6412d3ef3c879c267a"),
"title" : "MongoDB Overview",
"description" : "MongoDB is magical database",
"by" : "by newbie",
"url" : "http://www.mongodb_cannot_understand_mongoexport.com",
"tags" : [
"mongodb",
"database",
"NoSQL"
],
"likes" : 100
}
执行以下命令将类型作为对象和字符串,
db.testCollection.findOne()._id 的类型; 输出:对象
db.testCollection.findOne().title 的类型; 输出:字符串
如果在上述集合上运行 mongoexport 可能会或可能不会保证数据的保存,因为它包含数据类型字符串和对象。 (我怀疑任何文件都不会有字符串、objectID 数据类型)
在这种情况下,this list of bson types link description here 根本不应该使用 mongoexport
我的问题是
在什么情况下 mongoexport 可以与示例集合一起使用?
注意: 我想使用 mongoexport,mongodump 不是一个选项
【问题讨论】:
标签: json mongodb bson mongoexport