【问题标题】:MongoDB Shard chunks already have an identicallyMongoDB Shard 块已经有一个相同的
【发布时间】:2018-08-24 17:04:24
【问题描述】:

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

在 D 日志中始终显示此消息。

W SHARDING [migrateThread] 无法接收块 [{ _id: ObjectId('5ad5586b7ee7821b48139cfb') }, { _id: ObjectId('5ad6d2d77ee78222283cc9d5') }) 用于集合产品 因为我们已经有了一个具有 UUID 的同名集合 c16daf18-9412-437b-a1ba-a9e000e694ac,与捐赠者的不同 UUID 25a21963-d9ba-4022-becc-648d4d39a68c。手动放下 如果此分片包含来自先前的数据,则在此分片上收集 产品化身。

我理解错误,但我不知道该怎么做。 如果我去 mongos 并使用 status(),收集产品不会显示在分片 D 上,但在日志上则相反。 我不知道,如果我在 shard D 上连接并运行 db.products.drop(),这个动作只是在 D 上删除还是在所有 shard 上删除?

【问题讨论】:

    标签: mongodb chunks mongodb-cluster


    【解决方案1】:

    是的,您需要直接连接到分片 D 并将集合放到那里,如果从其他分片不会丢弃。然后当平衡器再次运行时,平衡器将能够自己创建集合。不知何故,在它被添加为分片之前,该集合就在副本集上。 (您可能还想直接从分片副本集(而不是 mongos)执行 mongodump,以防万一那里有您想要的数据。

    【讨论】:

      猜你喜欢
      • 2018-10-14
      • 2015-11-11
      • 2017-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-04
      • 2023-04-02
      • 1970-01-01
      相关资源
      最近更新 更多