Comment installer MongoDB sur CentOS 7
MongoDB se présente comme une base de données NoSQL open source, axée sur les documents, largement adoptée pour les applications de grande envergure grâce à son adaptabilité, son évolutivité et ses performances remarquables. Ce guide détaillé vous accompagnera dans le processus d'installation et de configuration de MongoDB sur un serveur CentOS 7.
Prérequis indispensables
Avant de démarrer l'installation, il est crucial de vérifier que les conditions préalables suivantes sont satisfaites :
– Un serveur CentOS 7 à jour, accessible via un compte utilisateur root ou sudo.
– Une connexion internet opérationnelle.
Première étape : Intégration du référentiel MongoDB
Le référentiel MongoDB ne fait pas partie des dépôts par défaut de CentOS 7. Pour l'ajouter, veuillez exécuter cette commande :
sudo yum-config-manager --add-repo https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
Seconde étape : Installation proprement dite de MongoDB
Une fois le dépôt intégré, lancez l'installation de MongoDB en employant la commande yum :
sudo yum install mongodb-org
Troisième étape : Activation et démarrage de MongoDB
Après l'installation, il est nécessaire de démarrer le service MongoDB et de l'activer afin qu'il démarre automatiquement à chaque démarrage du système :
sudo systemctl start mongod
sudo systemctl enable mongod
Quatrième étape : Création d'un utilisateur administrateur
Par défaut, MongoDB ne possède aucun utilisateur administratif. Pour en créer un, connectez-vous à la base de données en tant qu'utilisateur root :
mongo
Exécutez ensuite les commandes qui suivent :
use admin
db.createUser(
{
user: "admin",
pwd: "mot_de_passe_admin",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
Remplacez "mot_de_passe_admin" par un mot de passe robuste.
Cinquième étape : Validation de l'installation
Afin de confirmer que MongoDB est opérationnel, exécutez la commande suivante :
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Un résultat similaire à celui-ci devrait s'afficher :
{
"authInfo" : {
"authenticatedUsers" : [],
"authenticatedUserRoles" : []
},
"ok" : 1,
"connectionStatus" : "connected to test on 127.0.0.1:27017"
}
Cette réponse confirme le bon fonctionnement de MongoDB.
Configuration de MongoDB
Une fois MongoDB installé, sa configuration peut être personnalisée pour répondre à des besoins spécifiques. Voici quelques paramètres de configuration essentiels :
– Paramètre bindIp : Ce paramètre définit l'adresse IP sur laquelle le service MongoDB se lie. Par défaut, il est réglé sur 0.0.0.0, autorisant ainsi les connexions depuis n'importe quelle adresse. Pour restreindre l'accès à des adresses IP spécifiques, modifiez cette valeur.
– Paramètre port : Ce paramètre indique le port d'écoute de MongoDB pour les connexions des clients. Sa valeur par défaut est 27017. Vous pouvez la modifier pour éviter les conflits avec d'autres services.
– Paramètre journalisation : Ce paramètre permet de définir le niveau de journalisation de MongoDB. Les options disponibles sont "off", "error", "warning", "info" ou "debug", selon les besoins de dépannage.
Pour modifier ces paramètres, éditez le fichier de configuration de MongoDB, situé dans /etc/mongod.conf. Les changements seront effectifs après un redémarrage du service MongoDB.
Conclusion
L'installation et la configuration de MongoDB sur CentOS 7 s'avèrent relativement simples en suivant ce guide. Une fois mis en place, MongoDB offre une solution de stockage et de gestion de grands volumes de données. Sa flexibilité et ses performances en font un choix judicieux pour les applications modernes.
Foire Aux Questions
1. Quels sont les avantages de l'utilisation de MongoDB ?
– Adaptabilité : MongoDB stocke les données au format JSON, offrant ainsi une flexibilité pour divers types de données.
– Évolutivité : MongoDB peut être mis à l'échelle horizontalement par ajout de nœuds à un cluster.
– Performance : MongoDB utilise un moteur de stockage optimisé assurant des performances élevées pour les opérations de lecture et d'écriture.
2. Quelles sont les différences entre MongoDB et les bases de données relationnelles ?
– Modèle de données : MongoDB est orienté document, tandis que les bases relationnelles sont structurées en tables.
– Requêtes : MongoDB permet des requêtes ad hoc, tandis que les bases relationnelles nécessitent une structure de requête prédéfinie.
– Schéma : MongoDB ne nécessite pas de schéma prédéfini, contrairement aux bases relationnelles qui imposent une définition stricte.
3. Quelles sont les limites de MongoDB ?
– Cohérence des transactions : MongoDB ne garantit pas une cohérence stricte des transactions, ce qui peut être problématique pour les applications exigeant une forte cohérence.
– Jointures complexes : MongoDB ne gère pas les jointures complexes comme les bases relationnelles, ce qui peut impacter l'efficacité de certaines requêtes.
– Sécurité : MongoDB n'offre pas de fonctionnalités de sécurité avancées comme le contrôle d'accès basé sur les rôles (RBAC) hors package.
4. Comment sauvegarder une base de données MongoDB ?
– Sauvegardes intégrées : MongoDB fournit des commandes pour créer des sauvegardes. `mongodump` permet des sauvegardes complètes ou incrémentales.
– Sauvegardes tierces : Vous pouvez utiliser des outils comme mongobackup ou Atlas Backup pour automatiser les sauvegardes MongoDB.
5. Comment surveiller les performances de MongoDB ?
– Statistiques du moteur de base de données : MongoDB fournit des statistiques sur l'utilisation de la mémoire, le débit des requêtes et le nombre de connexions. La commande `db.stats()` donne accès à ces données.
– Outils tiers : Vous pouvez utiliser des outils tels que MongoDB Compass ou mongotop pour observer les performances de MongoDB, visualiser les requêtes et identifier les goulots d'étranglement.
6. Comment optimiser les performances de MongoDB ?
– Index : La création d'index améliore l'exécution des requêtes.
– Requêtes : Optimisez vos requêtes pour éviter les recherches coûteuses et utilisez des projections pour limiter les champs retournés.
– Gestion du cache : MongoDB met en cache les données fréquemment consultées. Ajustez la taille et la stratégie du cache.
– Réglage de la mémoire : La RAM allouée à MongoDB influence les performances. Ajustez les paramètres de limite de mémoire.
7. Comment importer des données dans MongoDB ?
– `mongoimport` : Utilisez cet outil pour importer des données depuis des fichiers JSON, CSV ou TSV.
– Insertions par lots : La méthode `insertMany()` permet d'insérer plusieurs documents par lots pour une meilleure performance.
– Outils tiers : Des outils tels que MongoDB Stitch ou Apache Sqoop peuvent importer des données à partir de diverses sources.
8. Comment exporter des données de MongoDB ?
– `mongoexport` : Cet outil sert à exporter les données de MongoDB vers des fichiers JSON, CSV ou TSV.
– Extraction de curseur : Utilisez la méthode `find()` avec le curseur pour extraire et enregistrer des données dans des fichiers.
– Outils tiers : Des outils comme MongoDB Stitch ou Apache Sqoop permettent d'exporter des données vers diverses destinations.