db.collection.unhideIndex()
On this page本页内容
Definition定义
db.collection.unhideIndex()- Important
mongosh Method
This page documents a
mongoshmethod. This is not the documentation for database commands or language-specific drivers, such as Node.js.For the database command, see the
index.hiddencollection option set using thecollModcommand.For MongoDB API drivers, refer to the language-specific MongoDB driver documentation.
For the legacy
mongoshell documentation, refer to the documentation for the corresponding MongoDB Server release:Unhides an existing index from the query planner. Once unhidden, the indexes are immediately available for use.取消隐藏查询计划器中的现有索引。一旦取消隐藏,索引就可以立即使用。
Syntax语法
db.collection.unhideIndex(<index>)
Parameters参数
The db.collection.unhideIndex() method takes the following parameter:db.collection.unhideIndex()方法采用以下参数:
index | string or document | Tip db.collection.getIndexes() method to find the index name or the index specification document. db.collection.getIndexes()方法查找索引名称或索引规范文档。text索引,请指定索引名称。 |
The db.collection.unhideIndex() is a mongosh shell wrapper for the collMod command.db.collection.unhideIndex()是collMod命令的mongosh shell包装器。
Behavior行为
Index Modifications Reset Statistics索引修改重置统计信息
Unhiding a hidden index resets its 取消隐藏隐藏索引将重置其$indexStats.$indexStats。
No-op
Unhiding an already unhidden index has no effect on the index. However, the operation will still generate an empty oplog entry.取消隐藏已取消隐藏的索引对索引没有影响。但是,该操作仍然会生成一个空的oplog条目。
Required Access所需访问权限
If the deployment enforces authentication/authorization, you must have the 如果部署强制执行身份验证/授权,则您必须在集合的数据库中具有collMod privilege in the collection's database.collMod权限。
The built-in role 内置角色dbAdmin provides the required privileges.dbAdmin提供所需的权限。
Example实例
The following example unhides an existing index.以下示例取消隐藏现有索引。
First, use 首先,使用db.collection.createIndex() to create a hidden index:db.collection.createIndex()创建隐藏索引:
db.restaurants.createIndex( { borough: 1, ratings: 1 }, { hidden: true } );
To verify, run 要进行验证,请在db.collection.getIndexes() on the restaurants collection:restaurants集合上运行db.collection.getIndexes():
db.restaurants.getIndexes();
The operation returns the following information:该操作返回以下信息:
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"borough" : 1,
"ratings" : 1
},
"name" : "borough_1_ratings_1",
"hidden" : true
}
]
The index option 只有当值为hidden is only returned if the value is true.true时,才会返回索引选项hidden。
To unhide the index, you can specify either the index key specification document or the index name to the 要取消隐藏索引,可以指定索引键规范文档或db.collection.unhideIndex() method. The following specifies the index name:db.collection.unhideIndex()方法的索引名称。以下内容指定索引名称:
db.restaurants.unhideIndex( "borough_1_ratings_1" );
To verify, run 要进行验证,请在db.collection.getIndexes() on the restaurants collection:restaurants集合上运行db.collection.getIndexes():
db.restaurants.getIndexes()
The operation returns the following information:该操作返回以下信息:
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"borough" : 1,
"ratings" : 1
},
"name" : "borough_1_ratings_1"
}
]
The index option 索引选项hidden no longer appears as part of the borough_1_ratings_1 index since the field is only returned if the value is true.hidden不再显示为borough_1_ratings_1索引的一部分,因为只有当值为true时才会返回该字段。