MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

6 outils utiles pour surveiller les performances de MongoDB

Nous avons récemment montré comment installer MongoDB dans Ubuntu 18.04. Une fois que vous avez réussi à déployer votre base de données, vous devez surveiller ses performances pendant son exécution. C'est l'une des tâches les plus importantes de l'administration de la base de données.

Heureusement, MongoDB fournit diverses méthodes pour récupérer ses performances et son activité. Dans cet article, nous examinerons les utilitaires de surveillance et les commandes de base de données pour générer des statistiques sur l'état d'une instance MongoDB en cours d'exécution.

1. Mongostat

Mongostat a des fonctionnalités similaires à l'outil de surveillance vmstat, qui est disponible sur tous les principaux systèmes d'exploitation de type Unix tels que Linux, FreeBSD, Solaris ainsi que MacOS. Mongostat est utilisé pour obtenir un aperçu rapide de l'état de votre base de données ; il fournit une vue dynamique en temps réel d'un mongod en cours d'exécution ou mongos exemple. Il récupère le nombre d'opérations de base de données par type, telles que l'insertion, la requête, la mise à jour, la suppression, etc.

Vous pouvez exécuter mongostat comme montré. Notez que si vous avez activé l'authentification, mettez le mot de passe de l'utilisateur entre guillemets simples pour éviter d'obtenir une erreur, surtout si vous avez des caractères spéciaux dedans.

$ mongostat -u "root" -p '[email protected]!#@%$admin1' --authenticationDatabase "admin"

Pour plus de mongostat options d'utilisation, tapez la commande suivante.

$ mongostat --help 

2. Mongotop

Mongotop fournit également une vue dynamique en temps réel d'une instance MongoDB en cours d'exécution. Il suit le temps qu'une instance MongoDB passe à lire et à écrire des données. Il renvoie des valeurs toutes les secondes, par défaut.

$ mongotop -u "root" -p '[email protected]!#@%$admin1'  --authenticationDatabase "admin"

Pour plus de mongotop options d'utilisation, tapez la commande suivante.

$ mongotop --help 

3. Commande d'état du serveur

Tout d'abord, vous devez exécuter la commande suivante pour vous connecter à mongo coque.

$ mongo -u "root" -p '[email protected]!#@%$admin1' --authenticationDatabase "admin"

Ensuite, exécutez le serverStatus , qui fournit un aperçu de l'état de la base de données, en collectant des statistiques sur l'instance.

>db.runCommand( { serverStatus: 1 } )
OR
>db.serverStatus()

4. Commande dbStats

Les dbStats La commande renvoie des statistiques de stockage pour une base de données particulière, telles que la quantité de stockage utilisée, la quantité de données contenues dans la base de données et les compteurs d'objets, de collections et d'index.

>db.runCommand({ dbStats: 1 } )
OR
>db.stats()

5. collStats

collStats La commande est utilisée pour collecter des statistiques similaires à celles fournies par dbStats au niveau de la collection, mais sa sortie inclut un nombre d'objets dans la collection, la taille de la collection, la quantité d'espace disque consommée par la collection et des informations concernant ses index.

>db.runCommand( { collStats : "aurthors", scale: 1024 } )

6. Commande replSetGetStatus

Le replSetGetStatus La commande affiche l'état du jeu de réplicas du point de vue du serveur qui a traité la commande. Cette commande doit être exécutée sur l'admin base de données sous la forme suivante.

>db.adminCommand( { replSetGetStatus : 1 } )

En plus des utilitaires et des commandes de base de données ci-dessus, vous pouvez également utiliser des outils de surveillance tiers pris en charge directement ou via leurs propres plugins. Ceux-ci incluent mtop, munin et nagios.

Pour plus d'informations, consultez :Monitoring for MongoDB Documentation.

C'est tout pour le moment! Dans cet article, nous avons couvert quelques utilitaires de surveillance et commandes de base de données utiles pour rapporter des statistiques sur l'état d'une instance MongoDB en cours d'exécution. Utilisez le formulaire de commentaires ci-dessous pour poser des questions ou partager vos réflexions avec nous.