Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 13963|Répondre: 0

[Source] MySQL utilise le profilage pour analyser les raisons de la lenteur de l’exécution des instructions SQL

[Copié le lien]
Publié sur 06/07/2017 11:12:17 | | | |

Un collègue de CleverCode a récemment recommandé un outil pour analyser des instructions SQL dans MySQL, le profilage, et a constaté que cet outil est très efficace, capable d’analyser avec précision le temps spécifique passé sur les instructions SQL pendant le processus de requête. CleverCode le résume ici et vous le partage.

1 Introduction

Le Query Profiler de MySQL est un outil très pratique d’analyse diagnostique des requêtes, grâce auquel vous pouvez obtenir la consommation de plusieurs ressources dans l’ensemble du processus d’exécution d’une requête, telles que CPU, IO, IPC, SWAP, etc., ainsi que l’apparition de PAGE FAULTS, CONTEXT SWITCHE, etc., et également obtenir l’emplacement de chaque fonction appelée par MySQL dans le fichier source lors de l’exécution de la requête.

MySQL version 5.0.37 ou ultérieure prend en charge la fonction de débogage PROFILING, qui vous permet de comprendre les détails des ressources consommées par les instructions SQL. Comme il nécessite d’appeler la fonction getrusage() du système, il ne peut être utilisé que sur les plateformes de classes Linux/Unix, pas sur Windows. De plus, le PROFILING sert à traiter les processus plutôt que les threads, et d’autres applications sur le serveur peuvent influencer vos résultats de débogage, donc cet outil convient au débogage pendant le développement, et si vous souhaitez déboguer en production, vous devez faire attention à ses limites.

2 Exploitation

2.1 Vérifiez si le profil est activé, il est désactivé par défaut.


2.2 Activez le profilage. Le profilage des variables est une variable utilisateur qui doit être réactivée à chaque fois.


2.3 Exécuter les instructions suivantes : Pour éviter d’avoir stocké SQL dans QCACHE auparavant, il est recommandé de forcer l’instruction SELECT à ne pas effectuer la détection de QCACHE lors de l’exécution de SQL. Cela vous permet de soumettre la précision de l’analyse.


2.4 UtilisationPrésentation de profilLe plus récentInformations d’exécution de l’énoncé。 (Analyse : sélectionnez sql_no_cache compte(*) de system_user où l’âge > 20 ans)




2.5 Utilisation des profils d’affichage. Consultez une liste des instructions exécutées sur le serveur. (identifiant de requête, temps passé, déclaration).




2.6 Utiliser le profil de présentation pour interroger les informations d’exécution de l’ID de formulation. Ici, nous analysons la déclaration avec l’ID 6. (Analyse : sélectionnez sql_no_cache compte(*) de system_user où l’âge > 20 ans).


2.7 Obtenir la consommation CPU et bloquer l’E/S.




2.8 Obtenir des informations supplémentaires. peut être obtenu en effectuant « AFFICHER LE PROFIL *** POUR LA REQUÊTE n ». Adresse de référence : http://dev.mysql.com/doc/refman/5.6/en/show-profile.html.







Précédent:Un nouvel arrivant rapporte
Prochain:Des nouvelles à succès ! Le développement de mini-programmes est gratuit !
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com