Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

db.colección.unhideIndex() (método mongosh)

Importante

Método mongosh

Esta página documenta a mongosh método. Esto no es la documentación de comandos de la base de datos o drivers específicos de lenguaje, como Node.js.

Para el comando de base de datos, consulta la opción de colección index.hidden configurada usando collMod .

Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.

db.collection.unhideIndex()

Desoculta un índice existente del planificador de query. Una vez que se desocultan, los índices están disponibles de inmediato para su uso.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Nota

Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

db.collection.unhideIndex(<index>)

El método db.collection.unhideIndex() toma los siguientes parámetros:

Parameter
Tipo
Descripción

index

string o documento

Especifica el índice para mostrar del planificador de query. Puedes especificar el índice por el nombre del índice o por el documento de especificación del índice.

Para encontrar el nombre del índice o el documento de especificación de índice, puedes usar el método db.collection.getIndexes().

Para desocultar un índice de texto, se debe especificar el nombre del índice.

El db.collection.unhideIndex() es un shell mongosh collMod contenedor para el comando.

Al desocultar un índice oculto, se restablece su $indexStats.

Desocultar un índice que ya no está oculto no tiene ningún efecto sobre el índice. Sin embargo, la operación seguirá generando una entrada oplog vacía.

Si la implementación aplica autenticación/autorización, debe tener el privilegio collMod en la base de datos de la colección.

El rol con funcionalidad incorporada dbAdmin proporciona los privilegios necesarios.

El siguiente ejemplo revela un índice existente.

Primero, usa db.collection.createIndex() para crear un índice oculto:

db.restaurants.createIndex( { borough: 1, ratings: 1 }, { hidden: true } );

Para verificar, ejecute db.collection.getIndexes() en la colección restaurants:

db.restaurants.getIndexes();

La operación devuelve la siguiente información:

[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"borough" : 1,
"ratings" : 1
},
"name" : "borough_1_ratings_1",
"hidden" : true
}
]

La opción de índice hidden solo se devuelve si el valor es true.

Para mostrar el índice, puedes especificar el documento de especificación de la clave del índice o el nombre del índice en el método db.collection.unhideIndex(). Lo siguiente especifica el nombre del índice:

db.restaurants.unhideIndex( "borough_1_ratings_1" );

Para verificar, ejecute db.collection.getIndexes() en la colección restaurants:

db.restaurants.getIndexes()

La operación devuelve la siguiente información:

[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"borough" : 1,
"ratings" : 1
},
"name" : "borough_1_ratings_1"
}
]

La opción de índice hidden ya no aparece como parte del índice borough_1_ratings_1, ya que el campo solo se muestra si el valor es true.

Tip

Volver

db.collection.totalSize

En esta página