Comment installer MongoDB sur Ubuntu 22.04. MongoDb ou Mongo est une base de données NoSQL open source la plus populaire. Il ne repose pas sur une structure de base de données relationnelle traditionnelle basée sur des tables. Il utilise des schémas dynamiques basés sur JSON qui sont modifiables à tout moment.
Dans ce guide, vous allez apprendre à installer et à configurer MongoDB sur votre serveur Ubuntu 22.04. Vous apprendrez également à configurer la connexion à distance à votre base de données Mongo.
Cette configuration est testée sur Google Cloud, elle devrait donc fonctionner correctement sur d'autres VPS, serveurs cloud exécutant Ubuntu 22.04.
Prérequis
- Un serveur Ubuntu 22.04 avec accès sudo.
Configuration initiale du serveur
Commencez par mettre à jour les packages du serveur vers les derniers disponibles.
sudo apt update sudo apt dist-upgrade -y
Installer les packages requis
Vous devrez peut-être installer gnupg
pour importer la clé. Généralement, ce n'est pas nécessaire car il peut être installé par défaut. Si vous ne l'avez pas, vous pouvez l'installer à l'aide de la commande suivante.
sudo apt install gnupg
Installer Libssl1
Vous devez installer libssl1 pour installer MongoDb sur Ubuntu 22.04, sinon vous recevrez une erreur similaire à celle ci-dessous.
The following packages have unmet dependencies: mongodb-org-mongos : Depends: libssl1.1 (>= 1.1.1) but it is not installable mongodb-org-server : Depends: libssl1.1 (>= 1.1.1) but it is not installable mongodb-org-shell : Depends: libssl1.1 (>= 1.1.1) but it is not installable
Pour installer libssl1, suivez les étapes ci-dessous.
echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list sudo apt update sudo apt install libssl1.1
Vous avez maintenant tous vos packages pré-requis installés et vous pouvez procéder à l'installation de MongoDB.
Installer MongoDB
Ici, nous allons installer MongoDB Community Edition avec LTS en utilisant le apt
directeur chargé d'emballage.
La dernière version actuelle de MongoDB au moment de cet article est la 5.0.8.
Importez la clé publique à l'aide de la commande suivante.
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
Ajoutez le référentiel MongoDB à la liste des sources. Nous utiliserons le référentiel Focal Fosa car au moment de la rédaction de cet article, MongoDB Community Edition n'a pas de référentiel séparé pour Jammy Jellyfish.
Le référentiel Focal Fosa est en développement actif et compatible avec Jammy Jellyfish.
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
Mettez à jour les packages et installez MongoDB.
sudo apt update sudo apt install -y mongodb-org
Une fois l'installation terminée, activez MongoDB pour démarrer au démarrage du système.
sudo systemctl enable mongod
Démarrez le serveur MongoDB.
sudo service mongod start
Vous pouvez afficher l'état à l'aide de la commande suivante.
sudo service mongod status
Output ● mongod.service - MongoDB Database Server Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-05-30 08:49:02 UTC; 7s ago Docs: https://docs.mongodb.org/manual Main PID: 3739 (mongod) Memory: 99.3M CPU: 444ms CGroup: /system.slice/mongod.service └─3739 /usr/bin/mongod --config /etc/mongod.conf
Configurer MongoDB
Nous pouvons maintenant sécuriser MongoDB, configurer MongoDB pour accepter les connexions à distance et également créer une nouvelle base de données.
Sécuriser MongoDB
Modifier le fichier de configuration MongoDB.
sudo nano /etc/mongod.conf
Faites défiler jusqu'à la section de sécurité #security
et décommentez-le et activez l'autorisation. La modification finale devrait ressembler à celle ci-dessous.
security: authorization: enabled
Activer les connexions à distance
Pour activer les connexions à distance, vous devez modifier le même fichier et ajouter votre adresse IP interne ou privée aux interfaces réseau. Votre configuration devrait ressembler à celle ci-dessous.
net: port: 27017 bindIp: 127.0.0.1,10.128.15.214
Remplacer 10.128.15.214
avec votre adresse IP.
Ouvrez le pare-feu si vous en avez configuré un, pour le port 27017.
Redémarrez MongoDB pour que les modifications prennent effet.
sudo systemctl restart mongod
Confirmez si MongoDB autorise les connexions à distance à l'aide de la commande suivante.
sudo lsof -i | grep mongo
Vous devriez recevoir une sortie similaire à celle ci-dessous.
mongod 3866 mongodb 12u IPv4 33773 0t0 TCP instance-1.c.project_id.internal:27017 (LISTEN) mongod 3866 mongodb 13u IPv4 33774 0t0 TCP localhost:27017 (LISTEN)
Créer un utilisateur administrateur MongoDB
Connectez-vous au shell MongoDB en utilisant mongosh
commande.
mongosh
Current Mongosh Log ID: 62948cd79def2ce0319469d5 Connecting to: mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.4.2 Using MongoDB: 5.0.8 Using Mongosh: 1.4.2
Passez à la base de données d'administration.
use admin
Créez un utilisateur administrateur avec tous les privilèges et le mot de passe de configuration.
db.createUser({user: "admin" , pwd: passwordPrompt() , roles: [{ role: "userAdminAnyDatabase" , db: "admin"}]})
Entrez le mot de passe lorsque vous y êtes invité.
Saisissez exit
pour quitter le shell.
Vous pouvez maintenant utiliser la chaîne de connexion suivante pour vous connecter à MongoDB.
mongodb://admin:password@External-IP:27017/database
Préparez-vous à un poste de professionnel des technologies de l'information avec le système d'exploitation Linux
Commandes du service MongoDB
Vous pouvez start
, stop
, enable
, disable
, restart
en utilisant les commandes suivantes.
Démarrer MongoDB
sudo systemctl start mongodb
Arrêter MongoDB
sudo systemctl stop mongodb
Activer MongoDB
sudo systemctl enable mongodb
Désactiver MongoDB
sudo systemctl disable mongodb
Redémarrer MongoDB
sudo systemctl restart mongodb
Conclusion
Vous avez maintenant appris à installer et à configurer MongoDB sur Ubuntu 22.04 et également à configurer les connexions à distance.
Merci pour votre temps. Si vous rencontrez un problème ou des commentaires, veuillez laisser un commentaire ci-dessous.