Table des matières

, , ,

MongoDB

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).

Pré-requis

Installation

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é :

Importer la clé publique MongoDB

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

Installer la dernière version stable de "MongoDB Community Edition"

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
Si mongodb ne se lance pas, vous pouvez essayer ces commandes :
sudo rm /var/lib/mongodb/mongod.lock 
mongod --repair
sudo service mongod start 
mongo

Configuration

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.

Ces opérations sont réservées aux utilisateurs avancés, de mauvaises manipulations pouvant compromettre le fonctionnement du système.

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

Emplacement des fichiers de données

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 :

Accès à la base de données depuis le réseau

Cette opération peut compromettre la sécurité de votre système. Assurez-vous que vous savez ce que vous faites.

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.

Utilisation

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

Désinstallation

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.

Liens


Contributeurs principaux : pandark.