Docs 菜单
Docs 主页
/
MongoDB Manual
/ /

分片集群中的操作限制

在此页面上

  • 分片操作限制

$where 不允许引用 $where 函数中的 db 对象。这在未分片集合中并不常见。

分片环境中不支持 geoSearch 命令。

在 MongoDB 5.0 及更早版本中,您无法在 $lookup 阶段的 from 参数中指定分片集合

要对指定 multi: falsejustOne 选项的分片集合使用 updateOne() deleteOne() 操作:

  • 如果您仅针对一个分片,则可以在查询规范中使用部分分片键,或者

  • 您可以在查询规范中提供分片键_id 字段。

要将 findOneAndUpdate() 与分片集合一起使用,您的查询筛选器必须在分片键上包含相等条件,以比较以下任一格式的键和值:

{ key: value }
{ key: { $eq: value } }

MongoDB 不支持跨分片的唯一索引,除非唯一索引包含完整分片键作为索引的前缀。在这些情况下,MongoDB 将在整个键上强制执行唯一性,而不是单个字段。

提示

请参阅:

对任意字段的唯一约束,了解另一种方法。

MongoDB 不保证所有分片的索引一致。addShard 操作或数据段迁移期间的索引创建可能不会传播到新的分片。

要检查分片集群的索引是否一致,请使用 checkMetadataConsistency 命令:

db.runCommand( {
checkMetadataConsistency: 1,
checkIndexes: true
} )

后退

区域范围重叠

在此页面上