Practical Programming
Manipuler MongoDB via le terminal grâce au Mongo Shell

Mongo Shell: Les commandes à connaître pour manipuler MongoDB depuis le terminal

Manipuler votre base de donnée MongoDB peut se faire depuis votre terminal, grâce au Mongo Shell, ou depuis une interface graphique telle que MongoDB Compass.

Bien que l’interface graphique apporte un certain confort, Mongo Shell, lorsque vous le maitrisez, vous permet d’aller bien plus vite dans vos requêtes.

Dans cet article, nous allons voir quelles sont les commandes Mongo Shell à connaître pour être performant:

Accéder au Mongo Shell

Comment se connecter au Mongo Shell en local ?

Avant toute chose, assurez-vous d’avoir installé correctement MongoDB sur votre machine. Si ce n’est pas déjà fait, vous pouvez vous référer aux guides d’installation suivant votre OS:

Pour accéder au Mongo Shell, tapez la commande suivante:

mongo

Vous devriez voir le résultat suivant:

Vous avez maintenant accès au Mongo Shell de votre MongoDB local.

Comment se connecter au Mongo Shell de MongoDB Atlas?

Il se peut que vous souhaitiez accéder au Mongo Shell d’une instance mongoDB hébergée sur MongoDB Atlas, le service cloud de MongoDB.

Commencez par aller récupérer l’URL de connexion depuis votre interface MongoDB Atlas:

Retournez sur votre terminal et collez la connection string fourni par Atlas

Les opérations Mongo Shell sur la base de donnée

Une fois connecté au Shell, vous pouvez exécuter des requêtes MongoDB:

Comment lister les bases de données existantes ?

Pour lister les bases de données existantes, utilisez la commande suivante:

show dbs

Cette commande va vous lister l’ensemble des bases de données stockées sur votre instance MongoDB ainsi que le poids total de chacune d’entre elle:

Mongo Shell: Comment créer une base de données?

En SQL, il faut d’abord créer une base de donnée en utilisant CREATE DATABASE avant de l’utiliser via la commande USE nomDeLaBaseDeDonnées.

Dans le Mongo Shell, vous utiliserez seulement la commande use nomDeLaBDD. Si celle ci existe, il va la sélectionner, sinon il va la créer.

Pour vérifier que votre base de donnée est bien créé, vous pouvez saisir la commande

db

Celle-ci devrait vous retourner le nom de la base de donnée nouvellement créée.

Comment supprimer une base de données ?

Pour supprimer une base de donnée de votre instance MongoDB, il faut dans un premier temps la sélectionner en utilisant la commande use nomDeLaBDD. Vous pourrez ensuite utiliser la méthode dropDatabase() pour l’effacer.

A l’issue de l’opération, MongoDB vous affichera le nom de la base de donnée effacée et le statut. S’il est à 1, c’est que la base de donnée a correctement été supprimée.

Vous pouvez vérifier en utilisant la commande show dbs pour vous assurer qu’elle ne contient plus la base de donnée que vous vouliez supprimer.

Mongo Shell: les opérations sur les collections

Comment lister les collections présentes?

Pour avoir une liste rapide des collections contenues dans la base de données vous pouvez utiliser la commande

show collections

Si vous souhaitez en revanche avoir plus de détail sur chaque collection, vous pouvez utiliser la commande suivante:

db.getCollectionInfos()

Cette commande vous donnera des informations plus détaillé sur votre collection, notamment les index.

Comment créer une collection ?

Pour créer une collection depuis le Mongo Shell, utilisez la commande suivante:

db.createCollection('nomDeLaCollection')

Vous pouvez également passer une série d’options pour définir plus spécifiquement certaines règles pour cette collection

Comment effacer une collection?

Pour supprimer une collection:

db.nomDeLaCollection.drop()

Cette commande effacera la collection et les items qu’elle contient.

Comment lister les index sur la collection ?

Pour améliorer les performances des requêtes, une collection peut avoir plusieurs index. Afin de récupérer la liste des ces index vous pouvez utiliser la commande suivante:

db.nomDeLaCollection.getIndexes()

Comment créer un index sur la collection ?

Pour créer un index, utilisez la méthode:

db.nomDeLaCollection.createIndex({clés}, options)

Dans cet exemple, j’ai créé un index composé du champ name et du champ slug.

Si vous voulez en créer plusieurs d’un coup, vous avez également la méthode:

db.nomDeLaCollection.createIndexes()

La création d’index est une opération délicate sur laquelle il ne vaut mieux pas se tromper. Vous pouvez utiliser la commande du Mongo Shell mais si vous n’êtes pas très à l’aise avec les commandes shell, je vous suggère d’envisager l’interface graphique sur Mongo Compass ou l’interface web de MongoDB Atlas.

Comment supprimer un index sur la collection ?

Si vous voulez en supprimer un index de la collection, utilisez la méthode:

db.nomDeLaCollection.createIndex("nomDeIndex")

Il faudra récupérer le nom de l’index en faisant un getIndexes() pour pouvoir l’utiliser dans votre requête de suppression.

Les requêtes sur les documents

Maintenant que vous savez manipuler le Shell, vous pouvez exécuter toutes les requêtes MongoDB. Je vous invite à consulter l’article concernant les requêtes MongoDB à connaître pour manipuler les documents.

Aller plus loin

Retrouvez nous

N'hésitez pas à nous suivre sur les différents réseaux sociaux !

Most popular

Most discussed

Share This