Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
MongoDB Shell (mongosh) ist eine JavaScript- und Node.js-Umgebung für die Interaktion mit MongoDB-Bereitstellungen. Es ist ein beliebtes Communitytool, um Abfragen zu testen und mit den Daten in Ihrem Azure DocumentDB-Cluster zu interagieren. Das Azure-Portal enthält mehrere Tools zum Abfragen von MongoDB-Daten, einschließlich der Azure Cloud Shell. Azure Cloud Shell ist ein interaktives, authentifiziertes, über den Browser zugängliches Terminal für die Verwaltung von Azure-Ressourcen. In diesem Artikel wird erläutert, wie Sie eine Verbindung mit einem Azure DocumentDB-Cluster mithilfe der MongoDB-Shell in Azure Cloud Shell herstellen.
Voraussetzungen
Ein Azure-Abonnement
- Wenn Sie nicht über ein Azure-Abonnement verfügen, erstellen Sie ein kostenloses Konto
Ein vorhandener Azure DocumentDB-Cluster
- Wenn Sie keinen Cluster haben, erstellen Sie einen neuen Cluster.
Firewallregeln, mit denen Clients in Ihren Netzwerken eine Verbindung mit dem Cluster herstellen können. Weitere Informationen finden Sie unter "Konfigurieren der Firewall".
(Optional) Diese Voraussetzungen sind nur erforderlich, wenn Sie Azure Cloud Shell in einem virtuellen Netzwerk verwenden, das mit Azure DocumentDB identisch oder peered ist.
Mindestens ein vorhandenes virtuelles Azure-Netzwerk mit Subnetzen für Azure Cloud Shell und Azure DocumentDB-Bereitstellung.
Ein privater Endpunkt für den Azure DocumentDB-Cluster. Weitere Informationen finden Sie unter Konfigurieren eines privaten Links.
Azure Cloud Shell wird in demselben oder in einem virtuellen Netzwerk mit Peering bereitgestellt, mit Konnektivität zum privaten Azure DocumentDB-Endpunkt. Weitere Informationen finden Sie unter Bereitstellen von Cloud Shell im virtuellen Netzwerk.
Aktivieren des Zugriffs auf Ihren Cluster über Azure Cloud Shell
Stellen Sie zunächst sicher, dass Azure Cloud Shell auf Ihren Azure DocumentDB-Cluster zugreifen kann, indem Sie seine IP-Adressen in der Firewall zulassen.
Melden Sie sich beim Azure-Portal (https://portal.azure.com) an.
Navigieren Sie zum Azure DocumentDB-Cluster.
Wählen Sie "Netzwerk " im Navigationsmenü aus.
Wählen Sie auf der Seite "Netzwerk " im Abschnitt " Öffentlicher Zugriff " die Option "+ Azure Cloud Shell-IPs hinzufügen " aus, um Ihre aktuelle IP-Adresse automatisch zur Liste zugelassener Adressen hinzuzufügen.
Klicken Sie auf Speichern, um die Änderungen zu übernehmen.
Hinweis
Stellen Sie sicher, dass die spezifischen IP-Adressen für Ihre Region zulässig sind, um die Konnektivität sicherzustellen. Weitere Informationen finden Sie unter IP-Adressen für Azure DocumentDB.
Verbinden mit Azure Cloud Shell über den Schnellstart
Um eine direkte Verbindung mit Azure DocumentDB mithilfe der MongoDB-Shell herzustellen, verwenden Sie die Schnellstartoberfläche, die auf der Seite der Ressource im Azure-Portal verfügbar ist.
Wählen Sie auf der Clusterressourcenseite schnellstart (Vorschau) im Navigationsmenü aus.
Wählen Sie dann "MongoDB-Shell öffnen" aus.
Warten Sie, bis die MongoDB-Shell-Umgebung gestartet wird.
Sobald die Umgebung fertig ist, geben Sie Y ein, um die Benachrichtigung zu akzeptieren.
Hinweis
Wenn nach der Annahme der Benachrichtigung ein Problem beim Herstellen einer Verbindung mit der MongoDB-Shell auftritt, stellen Sie sicher, dass Azure Cloud Shell Zugriff auf Ihren Cluster hat.
Geben Sie nun Ihr Kennwort ein, um Ihren Cluster mit Cloud Shell zu verbinden.
Abrufen von Clusteranmeldeinformationen
Rufen Sie die Verbindungszeichenfolge ab, die Sie zum Herstellen einer Verbindung mit diesem Cluster benötigen.
Melden Sie sich beim Azure-Portal an (https://portal.azure.com).
Navigieren Sie zum vorhandenen Azure DocumentDB-Cluster.
Rufen Sie die Anmeldeinformationen ab, die Sie zum Herstellen einer Verbindung mit dem Cluster verwenden.
Wählen Sie auf der Clusterseite die Option "Verbindungszeichenfolgen" im Ressourcenmenü aus.
Kopieren oder aufzeichnen Sie im Abschnitt "Verbindungszeichenfolgen " den Wert aus dem Feld "Verbindungszeichenfolge ".
Von Bedeutung
Die Verbindungszeichenfolge im Portal enthält nicht den Kennwortwert. Sie müssen den <password> Platzhalter durch die Anmeldeinformationen ersetzen, die Sie beim Erstellen des Clusters eingegeben haben, oder das Kennwort interaktiv eingeben.
Manuelles Konfigurieren der MongoDB-Shell in Azure Cloud Shell
Installieren Sie den MongoDB Shell(mongosh)-Client in Ihrer Azure Cloud Shell-Instanz mit Node Package Manager (npm).
Öffnen Sie die Azure Cloud Shell, die mit einer Bash-Skriptumgebung konfiguriert ist.
Installieren Sie Version 1 der MongoDB-Shell lokal in Ihrem Benutzerverzeichnis.
npm install mongosh@1Warten Sie, bis die Installation abgeschlossen ist.
Überprüfen Sie, ob die Installation erfolgreich war, indem Sie die Version des
mongoshTools abrufen.npx mongosh --version
Herstellen einer Verbindung mit dem Cluster
Stellen Sie eine Verbindung mit Ihrem Cluster her, indem Sie die MongoDB-Shell mit einer Verbindungszeichenfolge verwenden, die kein Kennwort enthält. Verwenden Sie die interaktive Kennwortaufforderung, um Ihr Kennwort als Teil der Verbindungsschritte einzugeben.
Stellen Sie eine Verbindung her, indem Sie das Kennwort in die MongoDB-Shell-Eingabeaufforderung eingeben. Verwenden Sie für diesen Schritt eine Verbindungszeichenfolge ohne das Kennwort.
npx mongosh "mongodb+srv://<username>@<cluster-name>.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"Nachdem Sie das Kennwort angegeben und erfolgreich authentifiziert haben, beobachten Sie die angezeigte Warnung.
------ Warning: Non-Genuine MongoDB Detected This server or service appears to be an emulation of MongoDB rather than an official MongoDB product. ------Tipp
Sie können diese Warnung problemlos ignorieren. Diese Warnung wird generiert, weil die Verbindungszeichenfolge
cosmos.azureenthält. Azure DocumentDB ist eine native Azure-Plattform als Dienstangebot (PaaS).
Durchführen von Testabfragen
Stellen Sie sicher, dass Sie erfolgreich mit Ihrem Cluster verbunden sind, indem Sie eine Reihe von Testbefehlen und Abfragen ausführen.
Überprüfen Sie den Verbindungsstatus, indem Sie den
connectionStatusBefehl ausführen.db.runCommand({connectionStatus: 1}){ ... ok: 1 }Listen Sie die Datenbanken in Ihrem Cluster auf.
show dbsWechseln sie zu einer bestimmten Datenbank. Ersetzen Sie den
<database-name>Platzhalter durch den Namen einer beliebigen Datenbank in Ihrem Cluster.use <database-name>Tipp
Wenn der Datenbankname beispielsweise
inventorywäre, dann wäre der Befehluse inventory.Listen Sie die Sammlungen in der Datenbank auf.
show collectionsSuchen Sie die ersten fünf Elemente in einer bestimmten Auflistung. Ersetzen Sie den
<collection-name>Platzhalter durch den Namen einer beliebigen Sammlung in Ihrem Cluster.db.<collection-name>.find().limit(5)Tipp
Wenn der Auflistungsname beispielsweise
equipmentlautet, dann lautet der Befehldb.equipment.find().limit(5).