bonjour, es qu'il es possible de recuperer le temps d'execution d'une requete en mysql ,
bonjour, es qu'il es possible de recuperer le temps d'execution d'une requete en mysql ,
oui... je ne sais pas si tu le veux à travers une requête, mais si tu veux surveiller tes requêtes tu as des options de log=filename, qui te loggue la totale => juste en test, mais il y a aussi du --log-slow-queries[=file_name] couplé avec un long_query_time=[time en secondes.... c'est vraiment dommage que l'on ne puisse pas descendre en dessous mais bon] te permettront de surveiller l'activité de ton serveur et remontera uniquement les requêtes vraiment longues.
Maintenant si tu veux le temps d'exe en retour d'une requête, .... ben là... je saurais pas faire....
Gal'
Il n'y a pas à proprement parler de commande comme "SHOW LAST REQUEST TIME", mais il est possible de lancer la requête dans le client ligne de commande qui indique toujours "9 rows in set (0.01 sec)". Et pour avoir les requêtes on peut utiliser le log général (super pratique en test/debug).
Sinon rien n'interdit dans le code client de mesurer combien de temps il a fallut pour obtenir un résultat (ce qui prendra en compte les temps de transfert réseau).
Le "log-slow-queries" est très bien mais sa granularité à la seconde le rend à peu près inutile. Cependant il y a le patch microslow qui permet de donner un "long_query_time" bien plus petit. Il faudra soit recompiler le serveur avec le patch soit trouver une version (donc non officielle) l'incluant déjà. Ce n'est pas destiné à la production. Par ailleurs une version améliorée est disponible (http://www.mysqlperformanceblog.com/...l-performance/ il faudra vraiment que je teste ça).
Enfin je viens de trouver ça : http://dev.mysql.com/tech-resources/...-profiler.html
Donc en fait depuis la 5.0.37 il y a une fonctionnalité qui semble très très intéressante.
good news, je savais pas qu'on pouvait descendre sous la seconde, ça c'est génialissime.... m'en vais tester ça !!! J'ai pas perdu ma journée, merci Sivrît !
Gal'
Partager