Definição
- db.collection.unhideIndex()
- Importante- Método mongosh- Esta página documenta um método - mongosh. Esta não é a documentação de comandos de banco de dados nem drivers específicos de linguagem, como Node.js.- Para o comando de banco de dados de dados, consulte a opção de collection - index.hiddendefinida usando o comando- collMod.- Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem. - Exibe um índice existente do planejador de query. Uma vez exibidos, os índices ficam imediatamente disponíveis para uso. 
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
- MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem 
Observação
Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
- MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB 
- MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB 
Sintaxe
db.collection.unhideIndex(<index>) 
Parâmetros
O método db.collection.unhideIndex() utiliza o seguinte parâmetro:
| Parâmetro | Tipo | Descrição | 
|---|---|---|
| 
 | string ou documento | Especifica o índice a ser exibido do planejador de query. Você pode especificar o índice pelo nome do índice ou pelo documento de especificação do índice. Para localizar o nome do índice ou documento de especificação do índice, você pode usar o método  Para exibir um índice de texto , especifique o nome do índice. | 
O db.collection.unhideIndex() é um wrapper de shell mongosh para o comando collMod .
Comportamento
Estatística de redefinição de modificações do índice
Exibir um índice oculto redefine seu $indexStats.
Sem operação
Exibir um índice já exibido não afeta o índice. No entanto, a operação ainda gerará uma entrada de oplog vazia.
Acesso necessário
Se a implantação forçar a autenticação/autorização, você deve ter o privilégio collMod no banco de dados da coleção.
A função embutida dbAdmin fornece os privilégios exigidos.
Exemplo
O exemplo a seguir exibe um índice existente.
Primeiro, utilize db.collection.createIndex() para criar um índice oculto:
db.restaurants.createIndex( { borough: 1, ratings: 1 }, { hidden: true } ); 
Para verificar, execute db.collection.getIndexes() na collection restaurants:
db.restaurants.getIndexes(); 
A operação retorna as seguintes informações:
[    {       "v" : 2,       "key" : {          "_id" : 1       },       "name" : "_id_"    },    {       "v" : 2,       "key" : {          "borough" : 1,          "ratings" : 1       },       "name" : "borough_1_ratings_1",       "hidden" : true    } ] 
A opção de índice hidden só é retornada se o valor for true.
Para exibir o índice, você pode especificar o documento de especificação da chave de índice ou o nome do índice para o método db.collection.unhideIndex() . A seguir, o nome do índice é especificado:
db.restaurants.unhideIndex( "borough_1_ratings_1" ); 
Para verificar, execute db.collection.getIndexes() na collection restaurants:
db.restaurants.getIndexes() 
A operação retorna as seguintes informações:
[    {       "v" : 2,       "key" : {          "_id" : 1       },       "name" : "_id_"    },    {       "v" : 2,       "key" : {          "borough" : 1,          "ratings" : 1       },       "name" : "borough_1_ratings_1"    } ] 
A opção de índice hidden não aparece mais como parte do índice borough_1_ratings_1, pois o campo só é retornado se o valor for true.