mongodb copydb命令copy gridfs db get“BSONObj大小:0(0x00000000)无效”错误

mongodb copydb命令copy gridfs db get“BSONObj大小:0(0x00000000)无效”错误,mongodb,gridfs,Mongodb,Gridfs,我想将gridfsdb从一台计算机复制到另一台计算机。我正在使用copydb命令 我检查了一个fs_photosfromdb,文件的最大长度为140G: > db.fs.files.find({},{"length":1}).sort({"length":-1}).limit(5) { "_id" : "527156688f75550f14cdbe44", "length" : NumberLong(1369101) } { "_id" : "8197434919771504494", "

我想将gridfsdb从一台计算机复制到另一台计算机。我正在使用copydb命令

我检查了一个fs_photosfromdb,文件的最大长度为140G:

> db.fs.files.find({},{"length":1}).sort({"length":-1}).limit(5)
{ "_id" : "527156688f75550f14cdbe44", "length" : NumberLong(1369101) }
{ "_id" : "8197434919771504494", "length" : NumberLong(937048) }
{ "_id" : "7022162555617835884", "length" : NumberLong(893162) }
{ "_id" : "15191928400030169903", "length" : NumberLong(785255) }
{ "_id" : "18167776422270657585", "length" : NumberLong(777711) }

是我的数据库错误吗?

还要检查文件的最小大小。存储在GridFS中的文件长度不相关;文件被分成更小的块,以便存储在标准MongoDB集合中。从copydb命令中得到的错误与fs_photos数据库中出现的无效文档的大小有关。我建议在您的fs_照片数据库中的每个集合上运行。看起来可能有一个损坏的文档,您可能需要删除它。
> db.fs.files.find({},{"length":1}).sort({"length":-1}).limit(5)
{ "_id" : "527156688f75550f14cdbe44", "length" : NumberLong(1369101) }
{ "_id" : "8197434919771504494", "length" : NumberLong(937048) }
{ "_id" : "7022162555617835884", "length" : NumberLong(893162) }
{ "_id" : "15191928400030169903", "length" : NumberLong(785255) }
{ "_id" : "18167776422270657585", "length" : NumberLong(777711) }