Docs 菜单

Docs 主页开发应用程序MongoDB Manual

db.collection.getIndexes()

在此页面上

  • 定义
  • 行为
  • 必需的访问权限
  • 输出
db.collection.getIndexes()

重要

mongosh 方法

本页介绍了 mongosh方法。这不是数据库命令或特定语言驱动程序(例如 Node.js)的文档。

有关数据库命令,请参阅 listIndexes 命令。

对于 MongoDB API 驱动程序,请参阅特定语言的MongoDB 驱动程序文档。

对于传统 mongo Shell 文档,请参阅相应 MongoDB Server 版本的文档:

mongo shell v4.4

返回一个包含文档列表的数组,这些文档会对集合上现有的索引进行标识和描述,包括隐藏的索引

您必须对集合调用db.collection.getIndexes() 。例如:

db.collection.getIndexes()

collection 更改为要返回索引信息的集合的名称。

从 MongoDB4 开始。2 ,如果发出 的客户端在操作完成之前断开连接,MongoDBdb.collection.getIndexes() 会使用db.collection.getIndexes() killOp将 标记为终止。

要在副本集成员上运行, listIndexes操作要求该成员处于PRIMARYSECONDARY状态。如果节点处于其他状态,例如STARTUP2 ,则操作错误。

从 MongoDB 5开始。 0 。 16 , wildcardProjection字段以其提交的形式存储索引投影。早期版本的服务器可能已将投影以规范化形式存储。

服务器以相同的方式使用索引,但您可能会注意到listIndexesdb.collection.getIndexes()命令的输出有所不同。

要在强制执行访问控制时运行db.collection.getIndexes() ,用户必须拥有对集合执行listIndexes的特权。

内置角色read提供对数据库中的集合运行db.collection.getIndexes()所需的特权。

db.collection.getIndexes() 会返回保存该集合索引信息的文档的数组。例如:

[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"status" : 1
},
"name" : "status_1"
},
{
"v" : 2,
"key" : {
"points" : 1
},
"name" : "points_1"
}
]

索引信息包括用于创建索引的键和选项。仅当值为true时,索引选项hidden才可用。

有关键和索引选项的信息,请参阅db.collection.createIndex()

← db.collection.findOneAndUpdate()