Maison >base de données >tutoriel mysql >Maîtriser MySQL : indicateurs de performances clés que chaque développeur devrait surveiller
Surveiller les métriques de performances MySQL et gérer votre base de données ne doit pas nécessairement être difficile. Oui, vous avez bien entendu. Avec les stratégies et outils de surveillance appropriés à votre disposition, vous pouvez enfin passer au second plan. La méthode RED, associée aux puissantes capacités de surveillance de Releem et aux recommandations de configuration faciles à appliquer, fait le gros du travail à votre place.
La méthode RED est traditionnellement utilisée pour surveiller les performances des applications et services Web mais peut également être appliquée à la surveillance des performances MySQL. Releem a trouvé que le cadre était tout aussi utile pour surveiller les mesures de performances de MySQL, car les défis rencontrés par les bases de données, en termes de performances et de fiabilité, reflètent ceux rencontrés par les applications Web.
Lorsqu'elle est appliquée aux bases de données MySQL, la méthode RED se décompose en trois domaines de préoccupation critiques, chacun fournissant des informations sur la santé opérationnelle de votre base de données :
Query Rate (Rate) – Ceci évalue le volume de requêtes ou de commandes exécutées par seconde, offrant une mesure directe de la charge de travail du serveur. Il joue un rôle déterminant dans l'évaluation de la capacité de la base de données à gérer des opérations simultanées et de sa réactivité aux demandes des utilisateurs.
Taux d'erreur (Erreurs) – Le suivi de la fréquence des erreurs dans les requêtes met en lumière les problèmes de fiabilité potentiels au sein de la base de données. Un taux d'erreur élevé peut indiquer des problèmes sous-jacents liés à la syntaxe des requêtes, au schéma de la base de données ou aux contraintes du système qui affectent l'intégrité globale de la base de données. La principale métrique MySQL pour le taux de surveillance est Aborted_clients.
Durée d'exécution des requêtes (Durée) – La métrique de durée est une mesure du temps nécessaire à l'exécution des requêtes, du lancement à l'exécution. Cet indicateur de performance évalue l'efficacité des opérations de récupération et de traitement des données qui ont un impact direct sur l'expérience utilisateur et le débit du système.
La santé de ces métriques vous donne une solide compréhension des performances de votre base de données et, par conséquent, de l'expérience vécue par vos utilisateurs. La méthode RED permet d'évaluer facilement ce qui ne va pas avec votre base de données et ce qui doit être corrigé. Par exemple, si vous constatez que les requêtes s'exécutent lentement, cela peut signaler la nécessité de modifier les index ou d'optimiser les requêtes concernées pour améliorer l'efficacité.
Pour appliquer efficacement la méthode RED à la surveillance des performances MySQL, Releem se concentre sur huit aspects critiques de votre base de données. Chacun d'entre eux est lié au taux, aux erreurs ou à la durée d'une manière ou d'une autre :
La latence mesure le temps nécessaire pour exécuter une requête – à partir du moment où une requête est envoyée à la base de données jusqu'à ce que la base de données réponde. La latence influence directement la façon dont les utilisateurs perçoivent votre application.
Pour la plupart des applications Web, atteindre une latence comprise entre quelques millisecondes et environ 10 millisecondes pour les opérations de base de données est considéré comme excellent. Cette gamme garantit une expérience utilisateur fluide, car le délai est pratiquement imperceptible pour l'utilisateur final.
Une fois que la latence atteint la barre des 100 millisecondes et au-delà pour les requêtes simples à moyennement complexes, les utilisateurs commencent à remarquer un retard. Cela peut devenir problématique lorsqu'un retour immédiat est essentiel, comme dans les soumissions de formulaires, les requêtes de recherche ou le chargement de contenu dynamique.
Pour en savoir plus sur la latence MySQL
Le débit, quantifié en requêtes par seconde (QPS), évalue l'efficacité de votre base de données et sa capacité à gérer les charges de travail. Un débit élevé signifie un système de base de données bien optimisé, capable de gérer efficacement des volumes de requêtes importants. Un faible débit peut indiquer des goulots d'étranglement en termes de performances ou des limitations de ressources.
L'obtention d'un débit élevé implique généralement une combinaison de requêtes SQL optimisées, de ressources matérielles appropriées (CPU, mémoire et sous-systèmes d'E/S rapides) et de configurations de base de données affinées.
Pour en savoir plus sur le débit
Les requêtes lentes sont essentiellement des requêtes de base de données qui dépassent un seuil de temps d'exécution prédéfini. Vous pouvez ajuster ce seuil en fonction de vos objectifs de performances spécifiques ou de vos références opérationnelles. Le suivi du nombre de requêtes lentes vous permet d'identifier les requêtes qui nécessitent une optimisation.
L'identification et la journalisation de ces requêtes lentes ont lieu dans le slow_query_log, un fichier dédié créé pour stocker les détails des requêtes qui ne répondent pas aux normes de performances définies.
Pour en savoir plus sur le nombre de requêtes lentes
Cette métrique compte le nombre de connexions qui ont été interrompues parce que le client n'a pas fermé correctement la connexion. Un nombre élevé de clientes avortées peut indiquer diverses causes :
Pour en savoir plus sur les clients avortés
Le CPU est le cerveau de votre serveur. Il exécute des commandes et effectue des calculs qui permettent à votre base de données de stocker, récupérer, modifier et supprimer des données. Garder un œil attentif sur l'utilisation du processeur permet de garantir que le serveur dispose de suffisamment de puissance de traitement pour gérer sa charge de travail. Une utilisation élevée du processeur peut être le signe révélateur d'un serveur surchargé qui a du mal à répondre aux demandes qui lui sont imposées.
Voici quelques directives générales à prendre en compte pour l'utilisation du processeur :
50-70 % soutenu – À ce niveau, votre processeur gère efficacement une charge de travail modérée à lourde, mais il reste encore une certaine marge pour les charges de pointe. C'est une gamme saine pour les serveurs en fonctionnement normal.
70-90 % soutenu – Lorsque l'utilisation du processeur se situe systématiquement dans cette plage, cela indique une charge de travail élevée qui laisse une marge limitée pour gérer les demandes de pointe. Vous devez surveiller le serveur de près.
Supérieur à 90 % soutenu – Il s'agit d'un indicateur fort que le serveur approche ou atteint sa capacité. Des problèmes de performances notables, notamment des temps de réponse lents aux requêtes et des délais d’attente potentiels, sont probables. Il est essentiel d’en rechercher la cause et de mettre en œuvre des optimisations ou de faire évoluer les ressources en conséquence.
Remarque : Des pics occasionnels au-dessus de ces seuils n'indiquent pas nécessairement un problème, car les bases de données sont conçues pour gérer des charges variables. Le mot clé est soutenu. Une utilisation soutenue et élevée est le signe que votre serveur est soumis à une pression importante.
La RAM est une ressource clé pour les bases de données, car elle stocke les données actives et les index, permettant un accès rapide et un traitement efficace des requêtes. Une bonne gestion de l'utilisation de la RAM garantit que la base de données peut gérer efficacement les charges de travail, en optimisant à la fois les opérations de récupération et de manipulation des données.
Voici quelques directives générales à prendre en compte pour l'utilisation de la RAM :
<60-70 % d'utilisation – Cette plage est généralement considérée comme sûre et indique qu'il y a suffisamment de mémoire disponible pour les opérations de base de données en cours et les pics de charge de travail supplémentaires.
70-85 % d'utilisation – Lorsque l'utilisation de la RAM se situe systématiquement dans cette plage, cela suggère que la base de données fait bon usage de la mémoire disponible mais commence à atteindre le seuil d'une surveillance attentive. . Rester dans cette fourchette pendant les heures de pointe peut limiter la marge de manœuvre nécessaire pour gérer les augmentations soudaines de la demande.
Utilisation de 85 à 90 % – Dans cette plage, le serveur approche de sa capacité de mémoire. Une utilisation élevée de la mémoire peut entraîner une augmentation des E/S du disque lorsque le système commence à échanger des données vers et depuis le disque. Considérez cela comme un signe d'avertissement indiquant que la charge de travail doit être optimisée ou que la mémoire physique du serveur doit être étendue.
>95 % d'utilisation – Un fonctionnement à une utilisation égale ou supérieure à 95 % de la RAM est critique et susceptible d'entraîner des problèmes de performances. À ce niveau, le serveur peut fréquemment recourir à des permutations, entraînant de graves ralentissements et potentiellement des délais d'attente pour les applications clientes. Une action immédiate est requise de votre part.
L'espace SWAP est utilisé lorsque la RAM physique de votre base de données est pleinement utilisée, permettant au système de décharger certaines des données les moins fréquemment consultées vers le stockage sur disque. Bien que ce mécanisme constitue un tampon utile contre les erreurs de mémoire insuffisante, le recours à SWAP peut avoir un impact important sur les performances en raison des temps d'accès considérablement plus lents par rapport à la RAM.
Idéalement, un serveur MySQL devrait présenter une utilisation SWAP faible à minimale. Cela indique que la base de données fonctionne dans sa RAM disponible.
Une utilisation élevée de SWAP est un signal d'alarme indiquant que la mémoire physique du serveur est insuffisante pour sa charge de travail, l'obligeant à dépendre de l'espace disque pour les opérations de données de routine. Vous devez prendre des mesures immédiates pour résoudre ce problème, en optimisant les demandes de mémoire de l'application ou en augmentant la RAM du serveur.
La métrique Opérations d'entrée/sortie par seconde (IOPS) indique l'intensité avec laquelle votre base de données interagit avec son système de stockage sous-jacent, c'est-à-dire le disque. Des niveaux élevés d'IOPS signifient une lourde charge de données transférées vers et depuis le support de stockage, ce qui, bien qu'indiquant une base de données chargée, peut également mettre en évidence des goulots d'étranglement potentiels dans les performances du disque.
Certains facteurs clés influençant les IOPS incluent :
L'approche de Releem en matière de surveillance des performances MySQL consiste à garder un œil attentif sur les détails importants. Cette stratégie comprend un suivi assidu des 8 métriques mentionnées – latence MySQL, débit, requêtes lentes, clients abandonnés, CPU, RAM, utilisation SWAP et IOPS – le tout dans le cadre de la méthode RED. En intégrant cette surveillance dans le cadre des bilans de santé biquotidiens (19 métriques !), Releem aide votre base de données à atteindre et à maintenir des niveaux élevés de performances, de fiabilité et d'évolutivité.
Au-delà du simple suivi des performances de MySQL, Releem va encore plus loin en proposant des suggestions de configuration sur mesure visant à résoudre les problèmes découverts lors de la surveillance. Nous appelons cette fonctionnalité Autopilot pour MySQL. Par exemple, si vous rencontrez des problèmes de latence élevée, Releem vous fournira des informations exploitables pour remettre vos chiffres de latence en ligne. Notre objectif ultime est de supprimer le besoin de surveillance manuelle grâce à un logiciel puissant et intuitif qui gère toutes les complexités de la gestion de bases de données dont vous préférez ne pas vous soucier.
Releem a une compatibilité étendue, donc que vous utilisiez Percona, MySQL ou MariaDB pour votre système de gestion de base de données, Releem peut vous aider. Consultez la liste officielle des systèmes pris en charge ici.
Pour une exploration approfondie de chaque métrique et des meilleures pratiques en matière de surveillance et d'optimisation des bases de données MySQL, pensez à visiter Releem.com.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!