Wenn man sich mit einer neuen Technologie vertraut macht, erweisen sich anfangs die einfachsten Schritte oft als die schwierigsten. Meist wird das entsprechende Grundlagenwissen einfach vorausgesetzt und nicht mehr eigens thematisiert.
In diesem Artikel erläutern wir die Grundlage für die Verwendung von MongoDB: die Erstellung einer Datenbank.
Eine MongoDB-Datenbank kann entweder mithilfe der MongoDB Shell oder mit MongoDB Compass erstellt werden. Beide Methoden sind für MongoDB Atlas Cluster und selbstverwaltete Cluster verfügbar.
Wie die meisten Softwaresysteme kann auch MongoDB über die Kommandozeile – englisch „Command Line Interface“ oder kurz CLI – kontrolliert werden.
Durch in die CLI eingegebene Befehle wird festgelegt, wie MongoDB arbeitet. Außerdem können Sie mithilfe von Befehlen Informationen zur Ausführung des MongoDB-Clusters abrufen und einfache Aktionen ausführen. Beispielsweise eine Datenbank erstellen, wie in diesem Artikel erläutert.
Mit Compass verfügt MongoDB auch über eine grafische Benutzeroberfläche, kurz GUI. Darüber können viele der Aufgaben ausgeführt werden, die andernfalls als Befehle in die CLI eingegeben werden müssten. Auf die Erstellung einer Datenbank mithilfe von Compass kommen wir weiter unten noch zu sprechen.
Wenn Sie mithilfe der Kommandozeile eine Datenbank erstellen möchten, benötigen Sie zunächst Zugriff auf das MongoDB-Cluster, das Sie über die MongoDB Shell nutzen. Als Shell wird ein Programm bezeichnet, über das Befehle in ein Softwaresystem eingegeben werden können.
Falls Sie MongoDB Atlas verwenden, können Sie mit den folgenden Schritten eine Shell-Software erstellen:
mongo
</strong> aus, um Shell zu starten und melden Sie sich am MongoDB Atlas Cluster an.Weitere Informationen: MongoDB Shell mit Atlas verbinden
Falls Sie einen selbstverwalteten MongoDB-Cluster ausführen:
mongo
</strong> aus und melden Sie sich am selbstverwalteten MongoDB-Cluster an.Weitere Informationen: Verwendung der MongoDB Shell in der Community Edition
Sobald Sie über MongoDB Shell Zugriff auf einen Cluster haben, können Sie sich mit dem Befehl „show“ sämtliche Datenbanken anzeigen lassen, auf die Sie in diesem Cluster zugreifen können:
> show dbs
admin 0.000GB
local 0.000GB
Die Datenbanken admin
</strong> und local
sind stets Bestandteil eines MongoDB-Clusters.
An dieser Stelle sei auf zwei Schwierigkeiten hingewiesen:
Die erste Herausforderung besteht darin, dass kein Befehl „create“ existiert, um eine MongoDB Shell zu erstellen.
Stattdessen verwenden Sie den Befehl use
</strong>, um eine Datenbank zu erstellen. Falls die Datenbank noch nicht vorhanden ist, wird sie im MongoDB-Cluster erstellt.
Oder anders ausgedrückt: Sobald Sie mithilfe des Befehls use
</strong> versuchen, eine Datenbank zu verwenden, wird diese erstellt.
Nehmen wir an, Sie haben den folgenden Befehl eingegeben, um eine neue Datenbank zu erstellen:
use myshinynewdb
Mehr brauchen Sie nicht zu tun. Die Datenbank wird erstellt. Doch damit sind wir bei der zweiten Herausforderung. Die Datenbank existiert zwar, doch wenn Sie den Befehlshow dbs
</strong> eingeben, erscheint Folgendes:
> show dbs
admin 0.000GB
local 0.000GB
Doch wo ist meineneuedb
</strong>?
Die zweite Herausforderung besteht darin, dass die Datenbank erst vollständig erstellt wird, wenn sie gefüllt wird.
Verwenden Sie den Befehl db.<sammlung>.insert
</strong>, um ein Dokument zur Datenbank hinzuzufügen.
> db.user.insert({name: "Ada Lovelace", age: 205})
WriteResult({ "nInserted" : 1 })
Einige Hinweise hierzu: Der „user
</strong>“ im Befehl bezieht sich auf die Sammlung, in die das Dokument eingefügt wurde. Sammlungen in MongoDB sind wie Tabellen in SQL-Datenbanken. Allerdings handelt es sich dabei um Gruppen von Dokumenten und keine Gruppen von Datensätzen.
Sammlungen werden wie Datenbanken über einen Befehl erstellt.
WriteResult({ "nInserted" : 1 })
</strong> zeigt an, dass das Dokument zur Sammlung hinzugefügt wurde.
Wenn Sie nun den Befehl „show dbs
</strong>“ ausführen, sehen Sie ihre Datenbank.
> show dbs
admin 0.000GB
meineneuedb 0.000GB
local 0.000GB
Doch es gibt noch eine Frage: Woher wusste der Befehl insert
</strong>, dass die Daten für meineneuedb
bestimmt waren?
Das liegt daran, dass meineneuedb
</strong> durch Eingabe des Befehls use zur aktiven Datenbank wurde, in der Befehle ausgeführt werden.
Geben Sie den Befehl db ein, um herauszufinden, welches die aktive Datenbank ist:
> db
meineneuedb
Der Befehl db
</strong> ruft den Namen der aktiven Datenbank auf. Geben Sie den Befehl use
ein und geben Sie die Datenbank an, um zu einer anderen Datenbank zu wechseln.
Manche Benutzer arbeiten lieber mit grafischen Benutzeroberflächen, um Daten und Sammlungen zu erstellen und zu aktualisieren. Die GUI von MongoDB bietet zusätzliche Funktionen, wie die Visualisierung von Daten, Erstellung von Performance-Profilen sowie CRUD-Zugriff auf Daten, Datenbanken und Sammlungen. Damit können Nutzer einen Datensatz anlegen (Create), lesen (Read), aktualisieren (Update) oder löschen (Delete).
Weitere Informationen unter MongoDB Compass: Der einfachste Weg, um Daten zu verwalten und zu finden
Falls Sie MongoDB Atlas verwenden, gelangen Sie über die folgenden Schritte zu Compass:
Falls Sie ein selbstverwaltetes Cluster von MongoDB verwenden:
Im Reiter „Datenbases“ in MongoDB Compass befindet sich der Button „Create Database“.
In MongoDB Compass können Sie eine Datenbank erstellen und gleichzeitig die erste Sammlung hinzufügen:
Fügen Sie im nächsten Schritt eine oder mehrere Dokumente zu Ihrer Datenbank hinzu.
Klicken Sie auf den Namen der Datenbank, um die gerade erstellte Sammlung zu sehen. Anschließend klicken Sie auf den Namen der Sammlung, um zum Tab „Documents“ zu gelangen:
Klicken Sie auf „Add Data“ und fügen Sie eines oder mehrere Dokumente zur Sammlung hinzu.
Sie können mehrere JSON-Dokumente nacheinander hinzufügen. Setzen Sie durch Komma getrennte JSON-Dokumente in eckige Klammern, um mehrere JSON-Dokumente gleichzeitig hinzuzufügen, wie im folgenden Beispiel:
[
{ "_id" : 8752, "Titel" : "Göttliche Komödie", "Autor" : "Dante", "Exemplare" : 1 },
{ "_id" : 7000, "Titel" : "Odyssee", "Autor" : "Homer", "Exemplare" : 10 },
{ "_id" : 7020, "Titel" : "Ilias", "Autor" : "Homer", "Exemplare" : 10 },
{ "_id" : 8645, "Titel" : "Eclogae", "Autor" : "Dante", "Exemplare" : 2 },
{ "_id" : 8751, "Titel" : "Das Gastmahl", "Autor" : "Dante", "Exemplare" : 2 }
]
Klicken Sie auf „Insert“, um die Dokumente zu Ihrer Sammlung hinzuzufügen.
Mit diesen einfachen Schritten können Sie eine Datenbank und eine Sammlung erstellen sowie Dokumente hinzufügen.
Mit der Datenbank, der Sammlung und den Dokumenten können Sie nun arbeiten und mehr Erfahrung mit MongoDB sammeln. Treten Sie der MongoDB Community bei – dort finden Sie Foren, Webinare und kostenlose Kurse der MongoDB University.