Question

"Microsoft SQL Server Profiler est une interface utilisateur graphique pour SQL Trace permettant de surveiller une instance du moteur de base de données ou d'Analysis Services."

Je trouve l'utilisation de SQL Server Profiler extrêmement utile pendant le développement, les tests et lorsque je débogue des problèmes d'application de base de données.Est-ce que quelqu'un sait s'il existe un programme équivalent pour MySql ?

Était-ce utile?

La solution

Quelque chose de cool dans la version 5.0.37 du serveur communautaire est Le nouveau profileur de MySQL.

Cela peut vous donner les informations que vous recherchez.

Autres conseils

Souhaitez-vous surveiller les performances ou simplement voir quelles requêtes sont en cours d'exécution ?Dans ce dernier cas, vous pouvez configurer MySQL pour enregistrer toutes les requêtes qui lui sont envoyées.Sur une machine RedHat Linux, vous pouvez ajouter

log = /var/lib/mysql/query.log

à la section [mysqld] de /etc/my.cnf avant de redémarrer MySQL.

N'oubliez pas que dans un scénario de base de données chargée, ces journaux peuvent devenir assez volumineux.

Essayez le profileur JET, un outil de performances et de diagnostic de requêtes en temps réel !Je l'utilise dans mon travail.Excellent logiciel et support.Évaluer Jet Profiler pour MySQL

A mon avis j'ai tout trouvé ici en brut....

Recherchez et ouvrez votre fichier de configuration MySQL, généralement /etc/mysql/my.cnf sur Ubuntu.Recherchez la section intitulée « Journalisation et réplication »

# * Logging and Replication
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.

log = /var/log/mysql/mysql.log

ou dans les versions plus récentes de MySQL, commentez ces lignes de codes

general_log_file        = /var/log/mysql/mysql.log
general_log             = 1
log_error                = /var/log/mysql/error.log

Décommentez simplement la variable « log » pour activer la journalisation.Redémarrez MySQL avec cette commande :sudo /etc/init.d/mysql restart

Nous sommes maintenant prêts à commencer à surveiller les requêtes au fur et à mesure qu’elles arrivent.Ouvrez un nouveau terminal et exécutez cette commande pour faire défiler le fichier journal, en ajustant le chemin si nécessaire.

tail -f /var/log/mysql/mysql.log

Jet Profiler est bon s'il s'agit d'une version payante.Le LogMonitor le pointe simplement vers le fichier journal MySQL.

Je ne suis pas sûr de l'interface utilisateur graphique, mais il existe une commande qui m'a beaucoup aidé à profiler les procédures stockées dans MySQL à l'aide de Workbench :

SET profiling = 1;
call your_procedure;
SHOW PROFILES;
SET profiling = 0;

Si la version 5.0.37 n'est pas disponible, vous souhaiterez peut-être consulter mon top.Il affiche simplement l'état actuel du serveur, mais vous permet d'exécuter EXPLAIN as (mentionné par mercutio) sur des requêtes particulières.

Utiliser Neor Profiler SQL, c'est excellent !!et l'application est gratuite pour tous les utilisateurs. http://www.profilesql.com/download/enter image description here

Je ne connais aucune application de profilage en tant que telle, mais il est courant d'utiliser la syntaxe EXPLAIN pour analyser les requêtes.Vous pouvez les utiliser pour déterminer les meilleurs index à créer, ou vous pouvez essayer de modifier la requête globale et voir comment elle modifie l'efficacité, etc.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top