Domanda

C'è un modo per visualizzare un elenco di indici su una collezione in MongoDB in guscio? Ho letto attraverso http://www.mongodb.org/display/DOCS/Indexes ma Non vedo nulla di

È stato utile?

Soluzione

Dalla shell:

db.test.getIndexes()

Per shell aiuto si dovrebbe provare:

help;
db.help();
db.test.help();

Altri suggerimenti

E se si vuole ottenere l'elenco di tutti gli indici nel database:

use "yourdbname"

db.system.indexes.find()

Se si desidera elencare tutti gli indici:

db.getCollectionNames().forEach(function(collection) {
   indexes = db[collection].getIndexes();
   print("Indexes for " + collection + ":");
   printjson(indexes);
});

Assicurarsi di utilizzare la vostra collezione:

db.collection.getIndexes()

http://docs.mongodb.org/manual/administration / indici / # informazioni-su-indici

È anche possibile uscita tutti gli indici insieme con la loro dimensione:

db.collectionName.stats().indexSizes

si verifica inoltre che db.collectionName.stats() dà un sacco di informazioni interessanti come paddingFactor, dimensioni della raccolta e il numero di elementi all'interno di esso.

Prendendo questo un ulteriore passo avanti, se si desidera trovare tutti gli indici su tutte le collezioni, questo script (modificata dalla sceneggiatura di Juan Carlos Farah qui ) ti dà una certa uscita utili, tra cui una stampa JSON dei dettagli indice:

 // Switch to admin database and get list of databases.
db = db.getSiblingDB("admin");
dbs = db.runCommand({ "listDatabases": 1}).databases;


// Iterate through each database and get its collections.
dbs.forEach(function(database) {
db = db.getSiblingDB(database.name);
cols = db.getCollectionNames();

// Iterate through each collection.
cols.forEach(function(col) {

    //Find all indexes for each collection
     indexes = db[col].getIndexes();

     indexes.forEach(function(idx) {
        print("Database:" + database.name + " | Collection:" +col+ " | Index:" + idx.name);
        printjson(indexes);
         });


    });

});
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top