MongoDB (de « humongous », énorme) est un système de gestion de bases de données libre et gratuit développé depuis octobre 2007 par 10gen. Il fait partie des bases de données NoSQL (not only sql), est orienté document, sans schéma. Il est flexible et peut fonctionner efficacement avec de grandes quantités de données. Il gère des collections (équivalents des tables pour MySQL) de documents JSON-like stockés dans un format binaire (BSON).
Deux types de paquets sont disponibles: le paquet fourni par la communauté ubuntu et le paquet fourni par la communauté mongodb. Le deuxième comporte la version plus récente.
Pour installer le paquet fourni par la communauté ubuntu, il vous suffit d'installer le paquet mongodb. Instructions pour installer le paquet ici.
Pour installer le paquet "MongoDB Community Edition" fourni par la communauté mongodb, il vous suffit de suivre les instructions de la documentation MongoDB ici.
En résumé :
1. Depuis le Terminal, installer les outils "gnupg" et "curl" :
sudo apt-get install gnupg curl
2. Importer la clé publique MongoDB :
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ --dearmor
Cette commande inscrit la clé publique dans un fichier "/usr/share/keyrings/mongodb-server-7.0.gpg" . Pour vérifier la liste des clés sur votre Système :
sudo apt-key list
Créer maintenant un fichier liste pour MongoDB sous /etc/apt/sources.list.d/mongodb-org-7.0.list.
Ex. : Pour Ubuntu 22.04 (Jammy)
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -sc)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
OU
Se placer dans le dossier /etc/apt/sources.list.d puis commande
sudo touch mongodb-org-7.0.list
Dans ce fichier, écrire le code suivant (avec la commande echo) :
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
sudo apt-get update sudo apt-get install -y mongodb-org
Vous pouvez installer d'autres versions spécifiques de MongoDB (cf documentation).
Lancer le serveur mongodb :
sudo service mongod start
Pour vérifier si le serveur est bien actif :
sudo service mongod status
sudo rm /var/lib/mongodb/mongod.lock mongod --repair sudo service mongod start mongo
La configuration par défaut de mongodb suffit à la plupart des utilisations. Cette configuration est disponible dans le fichier /etc/mongodb.conf
. Deux points de configuration particuliers peuvent néanmoins être utiles à connaitre.
Si vous rencontrez le message d'erreur suivant : "MongoDB dbpath (\data\db\) does not exist" en lançant mongod, créez le répertoire avec vos droits utilisateur :
sudo killall -15 mongod sudo mkdir -p /data/db/ sudo chown -R nom_utilisateur:nom_utilisateur /data/db sudo mongod
Par défaut, les fichiers de données sont stockés dans le répertoire /var/lib/mongodb
. Ces fichiers pouvant devenir volumineux, il est parfois nécessaire de les déplacer. Pour ce faire, il faut effectuer les opérations suivantes en super-utilisateur :
service mongodb stop
/var/lib/mongodb
vers leur nouvel emplacementmongodb
), y compris sur le répertoire contenantdbpath=/var/lib/mongodb
dans le fichier de configuration pour indiquer le nouvel emplacementservice mongodb start
Par défaut, la connexion à mongodb n'est possible que localement. Pour rendre la connexion possible depuis une autre machine, il suffit de commenter la ligne bind_ip = 127.0.0.1
dans le fichier de configuration. Il est aussi possible de modifier le port TCP utilisé (27017 par défaut) en décommentant la ligne port = 27017
. Assurez-vous que votre pare-feu ou votre routeur laisse passer le trafic sur le port concerné, le cas échéant.
L'utilisation Basique en shell s'effectue simplement grâce à la commande :
mongo
MongoDB shell version: 1.6.5 connecting to: test
Pour voir les bases disponible :
show dbs
Il est aussi possible d'utiliser une interface graphique, comme par exemple robomongo ou sur le site officiel https://robomongo.org/download
Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, le configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.