Webmaster Hub: Query_cache sur certaines requêtes - Webmaster Hub

Aller au contenu

Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Query_cache sur certaines requêtes MySQL 5.0 Noter : -----

#1 L'utilisateur est hors-ligne   SStephane 

  • Groupe : Fondateur
  • Messages : 460
  • Inscrit(e) : 06-février 09
  • Genre:Homme
  • Localisation:Grabels

Posté 16 mai 2011 - 18:09

Bonjour,

Dans une application qui interroge une base de données, la requête d'authentification est très longue (5 secondes et +). La requête effectuant 7 jointures (pas le choix), je me demande si le parsing de celle-ci ne pose pas problème. (La table contenant les utilisateurs comporte 2 millions d'entrées, les autres très peu, mais la table user est placée en premier dans la requête si vous vous posez la question).
Aussi, je voudrais tenter de mettre en cache cette requête qui comporte 2 paramètres (login/pass, classique), je sais que c'est possible dans d'autres SGBD (avec les paramètres), mais je ne trouve pas ceci pour MySQL 5.0.

Pour info,
- le cache des requêtes est activé, et j'ai déjà un peu augmenté sa taille, quelqu'un s'y connaîtrait t'il un peu plus sur MySQL à ce niveau et pourrait me renvoyer vers une doc qui me permettrait de mettre en cache une requête paramétrée,
- la connexion est effectuée via jdbc (PreparedStatement), mais la requête tapée en console prends autant de temps.

Voilà, j'ai pour le moment stocké les utilisateurs actifs dans la RAM afin de ne la faire qu'une fois, mais je cherche une meilleure solution que celle-ci ou une migration douloureuse...

Voilà voilà :-)
_AT_Montpellier
L'héroïsme, c'est la seule manière de devenir célèbre quand on a pas de talent (l'homme aux initiales douteuses)
Venez tester votre niveau de compétence en PHP :-)
0

#2 L'utilisateur est hors-ligne   jcaron 

  • Groupe : Membre+
  • Messages : 864
  • Inscrit(e) : 15-janvier 08
  • Genre:Homme
  • Localisation:Londres

Posté 16 mai 2011 - 19:59

Le premier problème c'est que si ta requête met 5 secondes à s'exécuter, c'est qu'elle est mal optimisée. C'est de la jointure qui doit donner une seule ligne par table concernée? Dans ce cas il doit te manquer des index adaptés. Explain est ton ami.

Jacques.
0

Partager ce sujet :


Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

1 utilisateur(s) en train de lire ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)