Auf einen Blick: MongoDB Shell (mongosh) ist eine interaktive Kommandozeile zur Verwaltung von MongoDB-Datenbanken, die Datenmanipulation und administrative Aufgaben ermöglicht. Wichtige Funktionen sind Syntaxhervorhebung, intelligente Autovervollständigung und kontextuelle Hilfe. Die Shell ist mit MongoDB-Server-Setup installiert und funktioniert unter Windows, Linux und Mac OS.
- Führe alle MongoDB-Abfragen aus der Mongo-Shell aus.
- Alternativen sind MongoDB Compass und NoSQLBooster.
Dieser Artikel handelt vom Standard-Client von MongoDB – der MongoDB-Shell, oder Mongosh. In diesem Artikel werden wir besprechen:
Über die MongoDB-Shell-Umgebung
Was ist die MongoDB-Hülle?
MongoDB Shell, oder mongosh, ist eine interaktive JavaScript-Schnittstelle, mit der Sie über die Kommandozeile mit MongoDB-Instanzen interagieren können. Die Shell kann für Datenmanipulation, Testanfragen und administrative Operationen verwendet werden, wie die Wartung von MongoDB-Datenbankinstanzen entweder lokal oder auf einem entfernten Host. MongoDB Shell ist der Standardclient für den MongoDB-Datenbankserver. Es handelt sich um eine Kommandozeilenschnittstelle (CLI), bei der Eingabe und Ausgabe alle konsolenbasiert sind. Mongosh ist ein gutes Werkzeug, um kleine Datensätze zu bearbeiten.
Welche Funktionen hat MongoDB Shell?
Die Funktionen von MongoDB Shell entwickeln sich ständig weiter. Wichtige Funktionen umfassen nun:
- Führe alle MongoDB-Abfragen aus der Mongo-Shell aus.
- Bearbeiten Sie Daten und führen Sie Verwaltungsaufgaben durch.
- Geben Sie Befehle mit JavaScript und einer zugehörigen API aus.
- Siehe vorherige Befehle in der Mongo-Hülle mit den Pfeiltasten nach oben und unten.
- Syntax, die Eingaben und Ausgaben farblich kodiert, um das Lesen zu erleichtern.
- Intelligente Autovervollständigung, die hilft, wenn du dich an einen Befehl oder Operator nicht erinnern kannst.
- Klare Fehlermeldungen, damit du weißt, was nicht stimmt und wo im Code Probleme auftreten.
- Kontextuelle Hilfe, die deine Richtung mit der Dokumentation verknüpft.
- Eine leistungsstarke Skriptumgebung.
- Die Möglichkeit, häufig genutzte Skripte als Schnipsel zu speichern, die man später wiederverwenden kann.
Installation der MongoDB-Shell
Die MongoDB-Shell wird installiert, wenn du den MongoDB-Server installierst. Sie ist am selben Ort installiert wie das MongoDB-Server-Binärprogramm. Wenn du es separat installieren möchtest, kannst du das MongoDB-Downloadcenter besuchen, von dort aus die benötigte Version und das Paket auswählen, das Archiv herunterladen und es an einen Speicherort in deinem Dateisystem kopieren. Mongo-Shell ist für alle Hauptbetriebssysteme verfügbar, einschließlich:
- Windows
- Linux
- Mac OS
Wie man sich von der MongoDB-Shell aus mit einer Datenbank verbindet
Sobald du MongoDB heruntergeladen und installiert hast, kannst du die Mongo-Shell nutzen, um dich mit einem MongoDB-Server zu verbinden, der läuft. Hinweis: Es ist erforderlich, dass dein Server bereits läuft, bevor du dich über die Shell mit ihm verbindest. Du kannst den Server im CMD mit folgendem Befehl starten.
net start MongoDB
Dann gib den Mongo-Befehl ein, um die Hülle auszuführen.
Mongo
Jetzt bist du in der Mongo-Shell. Wenn du möchtest, kannst du Mongo und Mongod ohne die Eingabeaufforderung ausführen. Dazu gehe du zum Installationsstandort und klicke doppelt auf die Mongod- und Mongo-Programme. Du bekommst das gleiche Ergebnis wie oben.
Verwendung eines anderen Ports mit MongoDB Shell
Der obige Mongo-Befehl funktioniert nur, wenn dein MongoDB-Server auf dem Standard-Port läuft, nämlich 27017. Wenn dein MongoDB-Server auf einem anderen Port läuft, musst du das explizit im Befehl angeben, wie unten gezeigt:
mongo --port 28010
Verbindung zu einem entfernten MongoDB-Server
Beide oben genannten Befehle funktionieren nur, wenn dein MongoDB-Server auf dem localhost läuft. Wenn du dich mit einem entfernten Server verbinden möchtest, nutze die Option '–host' mit dem Mongo-Befehl, wie unten gezeigt.
mongo --host mongodb0.example.com --port 28010
Grundlegende MongoDB-Shell-Befehle
Jetzt ist es Zeit, mit der Mongo-Hülle zu arbeiten. Zuerst lernen wir einige grundlegende Mongo-Befehle, die dir beim Einstieg helfen.
Siehe aktuell ausgewählte Datenbank - db-Befehl
Führe den DB-Befehl aus, um die Datenbank zu sehen, mit der du gerade arbeitest.
db
Wechsle zu einer anderen Datenbank – benutze den Befehl
Führe den Befehl use aus, um zu einer anderen Datenbank zu wechseln. Wenn du keine Datenbank hast, lerne, wie man eine neue Datenbank erstellt.
use company
Erstellen Sie Sammlungen und fügen Sie Daten in MongoDB ein
Sie können Sammlungen erstellen und Daten mit folgendem MongoDB-Shell-Befehl einfügen:
- DB bezeichnet die aktuell genutzte Datenbank.
- Mitarbeiter ist der Name der Inkasso.
- insertOne ist die Methode, um ein Dokument in die Sammlung einzufügen.
db.employee.insertOne( { name: "mark" } );
Daten in einer Sammlung abrufen – Methode finden
Verwenden Sie die Suchmethode, um Daten in einer Sammlung abzurufen. Die forEach(printjson)-Methode druckt sie mit JSON-Formatierung aus
db.employee.find().forEach(printjson)
Alle Datenbanken anzeigen – DBS-Befehl anzeigen
Verwenden Sie den Befehl "Show dbs", um alle Datenbanken anzuzeigen
show dbs
Erhalten Sie eine Liste von Hilfeoptionen – MongoDB-Hilfebefehle
Ein wichtiger Grundbefehl von MongoDB hilft dir, mit der Mongo-Shell einfach zu arbeiten: der Hilfe-Befehl. Führe den Hilfe-Befehl aus, um eine Liste der in der Mongo-Shell verfügbaren Hilfsoptionen zu erhalten.
Help
Um eine vollständige Liste der MongoDB-Shell-Befehle zu erhalten, die Sie in der aktuellen Datenbank ausführen können, geben Sie db.help() ein.
Weitere Datenmanipulationsbefehle werden wir in kommenden Tutorials besprechen. Eine vollständige Liste der Befehle finden Sie auf der offiziellen Mongo-Shell-Seite.
MongoDB Shell Tastenkürzel
Es gibt zwei wichtige MongoDB-Shell-Tastenkombinationen, die Sie kennen sollten:
- Benutze die Pfeile nach oben und unten , um in der Befehlshistorie hin und her zu wechseln.
- Drücken Sie die Tab-Taste, um eine vollständige Liste möglicher Befehle zu erhalten. Geben Sie zum Beispiel d ein und drücken Sie Tab zweimal. Sie erhalten folgende Ausgabe.
Nachteile der MongoDB-Shell
Obwohl die Mongo-Shell ein ausgezeichnetes Werkzeug zum Erlernen und Testen des MongoDB-Servers ist, ist sie in einer Produktionsumgebung schwierig zu verwenden. Eine Shell zu sein bringt von Natur aus gewisse Nachteile mit sich. Schauen wir uns an, was das ist:
- Die Mongo-Shell ist eine streng konsolenzentrierte Methode zur Datenmanipulation. Während manche es einfach und schnell finden, finden andere diese Eigenschaften vielleicht nicht ansprechend.
- Wenn du an mehreren Sitzungen arbeitest, brauchst du mehrere Terminals.
- Wenn die Ergebnisse zu lang sind, scrollen sie weg.
- Wiederholte Befehle oder das Debuggen einer Funktion erfordern, dass der Programmierer die lange Kommandozeilenhistorie manuell durchläuft.
Alternativen zu MongoDB Shell
Jetzt wissen Sie also, dass die MongoDB-Shell einige Nachteile hat. An diesem Punkt möchten Sie vielleicht wissen, welche anderen Optionen es gibt. MongoDB-Entwickler haben Treiber eingeführt, die spezifisch für jede Programmiersprache sind, um sich mit den MongoDB-Datenbanken zu verbinden, wenn Sie MongoDB in Ihren Anwendungen verwenden. Sie finden sie hier. Außerdem bevorzugen viele Menschen heutzutage die Nutzung von GUIs, um mit Datenbanken zu arbeiten. Eines der besten GUI-Tools für MongoDB ist der MongoDB Compass. Weitere nützliche GUI-Tools sind:
Denken Sie daran, dass die beste MongoDB-GUI von der zu erledigenden Aufgabe abhängt. MongoDB Compass ist die erste Option, wenn Sie die Kommandozeile komplett vermeiden möchten. Robo 3T ist einfach und wird von der Community gut unterstützt, während NoSQLBooster ein shellzentriertes, intelligentes GUI-Tool ist. Damit sind wir am Ende dieses Tutorials angekommen. Jetzt spielen Sie mit der Shell und üben Sie.
Zusätzliche Ressourcen
Für weitere Tutorials wie dieses entdecken Sie diese Ressourcen:
MongoDB-Leitfaden
- MongoDB-Überblick: Einstieg mit MongoDB
- Wie man MongoDB auf Ubuntu und Mac installiert
- Erstellung einer Datenbank in MongoDB
- MongoDB Shell Grundbefehle
- MongoDB Compass: Nutzung der Mongo GUI
- MongoDB rollenbasierte Zugriffskontrolle (RBAC) erklärt
- MongoDB-Projektion und Projektionsoperatoren erklärt
- MongoDB-Aggregatfunktionen erklärt
- MongoDB-Sortierung: sort()-Methode & Beispiele
- Verwendung von Push-and-Pull-Operatoren in MongoDB
- Wie man MongoDB $unwind
- 23 Gängige MongoDB-Abfrageoperatoren und deren Verwendung
- MongoDB GeoLocation-Abfragebeispiele
- Einführung in MongoDB-Transaktionen
- MongoDB-Indizes: Top-Indextypen und deren Verwaltung
- Die wichtigsten MongoDB-Befehle, die du kennen solltest
- MongoDB-Replikation: Eine vollständige Einführung
- Wie man einen MongoDB-Cluster einrichtet
- MongoDB Sharding: Konzepte, Beispiele & Tutorials
- MongoDB Atlas: Einrichtung und Nutzung von verwaltetem MongoDB
- Wie man MongoDB als Docker-Container ausführt
- MongoDB-Speichernutzung, Verwaltung und Anforderungen
- Wie man Mongodump für MongoDB-Backups verwendet
- Mongorestore-Beispiele zur Wiederherstellung von MongoDB-Backups
- Wie man PyMongo benutzt
- Wie man Mongoose für MongoDB und NodeJS verwendet
- MongoDB Spickzettel
- MongoDB vs Cassandra: NoSQL-Datenbanken im Vergleich
- PostgreSQL vs MongoDB: Vergleich von Datenbanken
- MySQL vs. MongoDB: Vergleich von Datenbanken
- MongoDB-Zertifizierungen: Eine Einführung
Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.