Es gibt vier ver­schie­de­ne Mög­lich­kei­ten, um in MongoDB Coll­ec­tions auf­zu­lis­ten: List Coll­ec­tions, Show Coll­ec­tions, db.get­Coll­ec­tion­Na­mes() und db.get­Coll­ec­tion­In­fos(). Der erst­ge­nann­te Befehl ist am gän­gigs­ten und zeigt Ihnen alle Namen und Optionen Ihrer Listen an.

Coll­ec­tions als Listen in MongoDB anzeigen

Das NoSQL-Da­ten­bank­ma­nage­ment­sys­tem MongoDB zeichnet sich durch eine hohe Fle­xi­bi­li­tät und Ska­lier­bar­keit aus. Anders als z. B. MySQL setzt das System dabei nicht auf Tabellen, sondern speichert Daten als Dokumente in Samm­lun­gen. Diese so­ge­nann­ten Coll­ec­tions können Sie mit dem MongoDB-Befehl Create Coll­ec­tion erstellen und über den MongoDB-Befehl Drop Coll­ec­tion entfernen.

Um einen Überblick über alle Samm­lun­gen zu gewinnen, kennt das System diverse MongoDB Commands. Möchten Sie sich mehrere oder alle Samm­lun­gen anzeigen lassen, haben Sie die Wahl zwischen den Befehlen List Coll­ec­tions und Show Coll­ec­tions sowie den Methoden db.get­Coll­ec­tion­Na­mes() und db.get­Coll­ec­tion­In­fos().

Der List-Coll­ec­tions-Befehl

Der MongoDB-Befehl List Coll­ec­tions ist ein besonders prak­ti­scher Weg, sich sämtliche oder alle Samm­lun­gen anzeigen zu lassen. Er gibt sämtliche Namen und Optionen der einzelnen Listen aus und kann durch mehrere Parameter spe­zi­fi­ziert werden.

Syntax von List Coll­ec­tions

Der Command List Coll­ec­tions wird fol­gen­der­ma­ßen gebildet:

{listCollections: 1, filter: <document>, nameOnly: <boolean>, authorizedCollections: <boolean>, comment: <any>}

Die vier op­tio­na­len Parameter von List Coll­ec­tions sind:

  • filter: Mit diesem Dokument passen Sie Ihre Such­an­fra­ge an.
  • nameOnly: Dies ist ein boolscher Wert, der festlegt, ob lediglich der Name der je­wei­li­gen Sammlung oder auch wei­ter­füh­ren­de In­for­ma­tio­nen aus­ge­ge­ben werden sollen.
  • aut­ho­ri­zedColl­ec­tions: Mit diesem boolschen Wert li­mi­tie­ren Sie den Zugriff auf die Auf­lis­tung und gestatten diesen nur Usern mit ent­spre­chen­den Rechten.
  • comment: Diese Option er­mög­licht Ihnen eine nähere Be­schrei­bung oder Mar­kie­rung der Such­an­fra­ge.
Tipp: Managed MongoDB von IONOS

Mit Managed MongoDB von IONOS können Sie sich auf das We­sent­li­che kon­zen­trie­ren. Ob In­stal­la­ti­on, Betrieb oder War­tungs­ar­bei­ten, IONOS sorgt für einen zu­ver­läs­si­gen Betrieb Ihrer hoch­per­for­man­ten Da­ten­ban­ken.

An­wen­dungs­bei­spiel für List Coll­ec­tions

Der Befehl lässt sich wie im folgenden Beispiel anwenden:

db.runCommand({listCollections: 1, authorizedCollections: true, nameOnly: true})

Die Ausgabe ist dann ein Cursor mit den ver­füg­ba­ren In­for­ma­tio­nen. So sieht das bei­spiel­haft aus:

"cursor" : {
"id" : NumberLong (0),
"ns" : "Kundenliste.$cmd.listCollections",
"firstBatch" : [
{
"name" : "liste.deutschland",
"type" : "collection"
},
{
"name" : "liste.frankreich",
"type" : "collection"
},
{
"name" : "liste.italien",
"type" : "collection"
}
]
},
"ok" : 1
}

Auf­lis­tungs­al­ter­na­ti­ve 1: Show Coll­ec­tions

Möchten Sie sich einfach einen schnellen Überblick über die Samm­lun­gen in Ihrer aktuellen Datenbank ver­schaf­fen, ist der Befehl Show Coll­ec­tions eine gute Wahl. Auch mit diesem Command lassen sich MongoDB-Coll­ec­tions auflisten. Dafür rufen Sie zunächst die ent­spre­chen­de Datenbank auf und fragen dann alle Samm­lun­gen ab. Dies ist die ent­spre­chen­de Ausgabe:

>use kundenliste
>show collections
liste.deutschland
liste.frankreich
liste.italien

Auf­lis­tungs­al­ter­na­ti­ve 2: db.get­Coll­ec­tion­Na­mes()

Für einen schnellen Blick auf die Samm­lun­gen in Ihrer Datenbank eignet sich auch die Methode db.get­Coll­ec­tion­Na­mes(). Diese gibt lediglich die Namen der un­ter­schied­li­chen Samm­lun­gen zurück und bietet sich vor allem dann an, wenn Sie lediglich ein paar MongoDB-Coll­ec­tions auflisten möchten. Die Ein- und Ausgabe sieht fol­gen­der­ma­ßen aus:

>db.getCollectionNames();
[
"liste.deutschland",
"liste.frankreich",
"liste.italien"
]

Auf­lis­tungs­al­ter­na­ti­ve 3: db.get­Coll­ec­tion­In­fos()

Für einen genauen Blick auf die Liste der MongoDB-Coll­ec­tions bietet sich die Methode db.get­Coll­ec­tion­In­fos() an. Diese gibt neben dem reinen Namen auch sämtliche re­le­van­ten Zu­satz­in­for­ma­tio­nen aus. Für die erste Coll­ec­tion sieht das bei­spiels­wei­se so aus:

>db.getCollectionInfos();
[
{
"name" : "liste.deutschland",
"type" : "collection",
"options" : {
},
"info" : {
"readOnly" : true,
"uuid" : UUID (<uuid>)</uuid>
},
"idIndex" : {
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_iod_"
}
},
Zum Hauptmenü