首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MongoDB碎片块已经有一个相同的

MongoDB碎片块已经有一个相同的
EN

Stack Overflow用户
提问于 2018-08-24 17:04:24
回答 1查看 411关注 0票数 1

我们有一个MongoDB碎片,配置有4个碎片(A、B、C、D)。在A,B,C之后添加了Shard D,一些集合与D正确地平衡,但只有一个集合在迁移中有一些问题。

在D日志上始终显示这条消息。

W分片migrateThread无法为收集产品接收块[{ _id: ObjectId('5ad5586b7ee7821b48139cfb') },{ _id: ObjectId('5ad6d2d77ee78222283cc9d5') },因为我们已经有了一个与UUID c16daf18-9412-437b-a1ba-a9e000e694ac同名的集合,这与捐献者的UUID 25a21963-d9ba-4022-becc-648d4d39a68c不同。如果收集包含来自上一次产品化身的数据,则手动删除该碎片上的集合。

我明白这个错误,但我不知道怎么做。如果我去mongos并使用status(),收集的产品不是显示在碎片D上,而是显示在日志上,相反。我不知道,如果我连接到碎片D并运行db.products.drop(),这个操作只在D上删除,还是在所有碎片中删除?

EN

回答 1

Stack Overflow用户

发布于 2018-11-15 01:05:26

是的,您需要直接连接到shard D,并在那里丢弃集合,如果从其他碎片中删除,则不会丢失集合。然后当平衡器再次运行时,平衡器将能够创建集合本身。不知何故,在作为碎片添加之前,复制集上的集合就在那里。(您还可能希望直接从碎片副本集(而不是mongos)执行一个mongos,以防万一有您想要的数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52008943

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档