Comment installer et utiliser MongoDB sur Ubuntu 20.04

MongoDB est un système de base de données orienté documents, open-source et multiplateforme, écrit en C++. Il stocke les données dans des collections de documents flexibles de type JSON et est utilisé pour créer des sites Web et des applications puissants. En raison de son évolutivité et de ses hautes performances, il est utilisé pour créer des applications modernes qui nécessitent des bases de données puissantes, critiques et à haute disponibilité.

Dans ce tutoriel, nous allons expliquer comment installer et utiliser le système de base de données MongoDB sur le serveur Ubuntu 20.04.

Conditions préalables

  • Un serveur exécutant Ubuntu 20.04.
  • Un mot de passe root est configuré sur ton serveur.

Installer MongoDB

Par défaut, la dernière version de MongoDB n’est pas disponible dans le dépôt par défaut d’Ubuntu 20.04. Tu devras donc ajouter le dépôt officiel de MongoDB dans ton système.

Tout d’abord, installe le paquet Gnupg avec la commande suivante :

apt-get install gnupg -y

Ensuite, télécharge et ajoute la clé GPG MongoDB avec la commande suivante :

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | apt-key add -

Ensuite, ajoute le référentiel MongoDB avec la commande suivante: :

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.2.list

Ensuite, mets à jour le référentiel et installe MongoDB avec la commande suivante :

apt-get update -y
apt-get install mongodb-org -y

Une fois l’installation terminée, démarre le service MongoDB et active-le pour qu’il démarre au redémarrage avec la commande suivante :

systemctl start mongod
systemctl enable mongod

Tu peux maintenant vérifier l’état du service MongoDB avec la commande suivante :

systemctl status mongod

Tu devrais obtenir la sortie suivante :

? mongod.service - MongoDB Database Server
     Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-05-15 05:30:39 UTC; 18s ago
       Docs: https://docs.mongodb.org/manual
   Main PID: 106996 (mongod)
     Memory: 76.0M
     CGroup: /system.slice/mongod.service
             ??106996 /usr/bin/mongod --config /etc/mongod.conf

May 15 05:30:39 ubuntu2004 systemd[1]: Started MongoDB Database Server.
May 15 05:30:48 ubuntu2004 systemd[1]: /lib/systemd/system/mongod.service:11: PIDFile= references a path below legacy directory /var/run/, upd>
lines 1-11/11 (END)

Tu peux aussi vérifier la version de MongoDB et l’adresse du serveur à l’aide de la commande suivante :

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

Tu devrais obtenir le résultat suivant :

MongoDB shell version v4.2.6
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("e1575445-f441-4b30-a5d7-4cf68852e68f") }
MongoDB server version: 4.2.6
{
	"authInfo" : {
		"authenticatedUsers" : [ ],
		"authenticatedUserRoles" : [ ]
	},
	"ok" : 1  
}

Configurer MongoDB

Le fichier de configuration par défaut de MongoDB se trouve dans /etc/mongod.conf. Par défaut, chaque utilisateur aura accès à toutes les bases de données et pourra effectuer n’importe quelle action. Pour les environnements de production, il est recommandé d’activer l’authentification MongoDB.

Tu peux le faire en modifiant le fichier /etc/mongod.conf :

nano /etc/mongod.conf

Ajoute les lignes suivantes :

security:
  authorization: enabled

Enregistre et ferme le fichier puis redémarre le service MongoDB pour appliquer les modifications :

systemctl restart mongod

Créer l’utilisateur Admin MongoDB

Après avoir activé l’authentification MongoDB, tu devras créer un utilisateur admin pour accéder et gérer la base de données MongoDB.

Tout d’abord, accède à la console MongoDB avec la commande suivante :

mongo

Tu devrais voir la sortie suivante :

MongoDB shell version v4.2.6
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("9ee0ea0c-cf95-4b83-9e88-00dc3a61e0a6") }
MongoDB server version: 4.2.6
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
	http://docs.mongodb.org/
Questions? Try the support group
	http://groups.google.com/group/mongodb-user

Ensuite, connecte-toi à la base de données admin avec la commande suivante :

> use admin

Tu devrais voir le résultat suivant :

switched to db admin

Ensuite, crée un nouvel utilisateur admin et définis le mot de passe avec la commande suivante :

> db.createUser( { user: "admin", pwd: "password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )

Tu devrais obtenir le résultat suivant :

Successfully added user: {
	"user" : "admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}

Ensuite, quitte la console MongoDB avec la commande suivante :

> quit()

Vérifier l’authentification MongoDB

À ce stade, MongoDB est configuré avec l’authentification.

Maintenant, essaie de te connecter à MongoDB en utilisant l’utilisateur que tu as créé précédemment :

mongo -u admin -p --authenticationDatabase admin

Il te sera demandé de fournir le mot de passe comme indiqué ci-dessous :

MongoDB shell version v4.2.6
Enter password: 

Indique ton mot de passe admin et appuie sur Entrée. Tu devrais voir le résultat suivant :

connecting to: mongodb://127.0.0.1:27017/?authSource=admin&compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("00d6d1eb-d1c3-41ea-89c7-d46ec6d17bee") }
MongoDB server version: 4.2.6

Maintenant, change la base de données en admin avec la commande suivante :

> use admin

Tu devrais voir le résultat suivant :

switched to db admin

Maintenant, liste les utilisateurs avec la commande suivante :

> show users

Tu devrais obtenir le résultat suivant :

{
	"_id" : "admin.admin",
	"userId" : UUID("65907484-9d67-4e6e-bb88-a6666310e963"),
	"user" : "admin",
	"db" : "admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	],
	"mechanisms" : [
		"SCRAM-SHA-1",
		"SCRAM-SHA-256"
	]
}
> 

Conclusion

Dans le guide ci-dessus, tu as appris à installer et à configurer MongoDB sur le serveur Ubuntu 20.04. Pour plus d’informations, tu peux consulter la documentation de MongoDB à l’adresse Mongo Doc.

Vous aimerez aussi...