Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
MongoDB Shell (mongosh) est un environnement JavaScript et Node.js pour interagir avec les déploiements MongoDB. Il s’agit d’un outil de communauté populaire pour tester les requêtes et interagir avec les données de votre cluster Azure DocumentDB. Le portail Azure contient plusieurs outils pour interroger des données MongoDB, notamment Azure Cloud Shell. Azure Cloud Shell est un terminal interactif, authentifié et accessible par navigateur qui permet de gérer les ressources Azure. Cet article explique comment se connecter à un cluster Azure DocumentDB à l’aide de MongoDB Shell dans Azure Cloud Shell.
Prerequisites
Un abonnement Azure
- Si vous n’avez pas d’abonnement Azure, créez un compte gratuit
Un cluster Azure DocumentDB existant
- Si vous n’avez pas de cluster, créez un cluster
Règles de pare-feu qui permettent aux clients au sein de vos réseaux de se connecter au cluster. Pour plus d’informations, consultez configurer le pare-feu.
(Facultatif) Ces conditions préalables sont uniquement requises si vous utilisez Azure Cloud Shell dans un réseau virtuel identique ou appairé à Azure DocumentDB.
Un ou plusieurs réseaux virtuels Azure existants avec des sous-réseaux pour le déploiement Azure Cloud Shell et Azure DocumentDB.
Point de terminaison privé pour le cluster Azure DocumentDB. Pour plus d’informations, consultez configurer une liaison privée.
Azure Cloud Shell déployé sur le même réseau virtuel ou sur un réseau virtuel appairé avec connectivité au point de terminaison privé Azure DocumentDB. Pour plus d’informations, consultez déployer Cloud Shell sur un réseau virtuel.
Activer l’accès à votre cluster à partir d’Azure Cloud Shell
Tout d’abord, assurez-vous qu’Azure Cloud Shell peut accéder à votre cluster Azure DocumentDB en autorisant ses adresses IP dans le pare-feu.
Connectez-vous au portail Azure (https://portal.azure.com).
Accédez au cluster Azure DocumentDB.
Sélectionnez Mise en réseau dans le menu de navigation.
Dans la page Mise en réseau de la section Accès public , sélectionnez l’option + Ajouter des adresses IP Azure Cloud Shell pour ajouter automatiquement votre adresse IP actuelle à la liste autorisée.
Sélectionnez Enregistrer pour appliquer les modifications.
Note
Pour garantir la connectivité, vérifiez que les adresses IP spécifiques de votre région sont autorisées. Pour plus d’informations, consultez les adresses IP pour Azure DocumentDB.
Se connecter à l’aide d’Azure Cloud Shell à partir du démarrage rapide
Pour vous connecter directement à Azure DocumentDB à l’aide de MongoDB Shell, utilisez l’expérience de démarrage rapide disponible sur la page de la ressource dans le portail Azure.
Dans la page de ressources du cluster, sélectionnez Démarrage rapide (préversion) dans le menu de navigation.
Ensuite, sélectionnez Ouvrir l’interpréteur de commandes MongoDB.
Attendez que l’environnement MongoDB Shell démarre.
Une fois l’environnement prêt, entrez Y pour accepter la notification.
Note
Si vous rencontrez un problème de connexion à l’aide de MongoDB Shell après avoir accepté l’avis, vérifiez qu’Azure Cloud Shell a accès à votre cluster.
Entrez maintenant votre mot de passe pour connecter votre cluster à Cloud Shell.
Obtenir les informations d’identification du cluster
Obtenez la chaîne de connexion dont vous avez besoin pour vous connecter à ce cluster.
Connectez-vous au portail Azure (https://portal.azure.com).
Accédez au cluster Azure DocumentDB existant.
Obtenez les informations d’identification que vous utilisez pour vous connecter au cluster.
Dans la page du cluster, sélectionnez l’option Chaînes de connexion dans le menu de ressources.
Dans la section Chaînes de connexion, copiez ou enregistrez la valeur à partir du champ Chaîne de connexion .
Important
La chaîne de connexion dans le portail n’inclut pas la valeur du mot de passe. Vous devez remplacer l’espace <password> réservé par les informations d’identification que vous avez entrées lors de la création du cluster ou entrer le mot de passe de manière interactive.
Configurer MongoDB Shell manuellement dans Azure Cloud Shell
Installez le client MongoDB Shell (mongosh) sur votre instance Azure Cloud Shell à l’aide de Node Package Manager (npm).
Ouvrez Azure Cloud Shell configuré avec un environnement de script Bash.
Installez la version 1 de MongoDB Shell localement dans votre répertoire utilisateur.
npm install mongosh@1Attendez la fin de l’installation.
Vérifiez que l’installation a réussi en obtenant la version de l’outil
mongosh.npx mongosh --version
Se connecter au cluster
Connectez-vous à votre cluster à l’aide de MongoDB Shell avec une chaîne de connexion qui n’inclut pas de mot de passe. Utilisez l’invite de mot de passe interactive pour entrer votre mot de passe dans le cadre des étapes de connexion.
Connectez-vous en entrant le mot de passe dans l'invite de commande du Shell MongoDB. Pour cette étape, utilisez une chaîne de connexion sans mot de passe.
npx mongosh "mongodb+srv://<username>@<cluster-name>.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"Une fois que vous avez fourni le mot de passe et que vous avez correctement authentifié, observez l’avertissement qui s’affiche.
------ Warning: Non-Genuine MongoDB Detected This server or service appears to be an emulation of MongoDB rather than an official MongoDB product. ------Conseil / Astuce
Vous pouvez ignorer cet avertissement en toute sécurité. Cet avertissement est généré, car la chaîne de connexion contient
cosmos.azure. Azure DocumentDB est une offre PaaS (Platform as a Service) Azure native.
Effectuer des requêtes de test
Vérifiez que vous êtes correctement connecté à votre cluster en effectuant une série de commandes de test et de requêtes.
Vérifiez l’état de votre connexion en exécutant la
connectionStatuscommande.db.runCommand({connectionStatus: 1}){ ... ok: 1 }Répertoriez les bases de données de votre cluster.
show dbsBasculez vers une base de données spécifique. Remplacez l’espace
<database-name>réservé par le nom de n’importe quelle base de données de votre cluster.use <database-name>Conseil / Astuce
Par exemple, si le nom de la base de données est
inventory, la commande seraituse inventory.Répertorier les collections dans la base de données.
show collectionsRecherchez les cinq premiers éléments d’une collection spécifique. Remplacez l’espace
<collection-name>réservé par le nom d’une collection dans votre cluster.db.<collection-name>.find().limit(5)Conseil / Astuce
Par exemple, si le nom de la collection est
equipment, la commande seraitdb.equipment.find().limit(5).