logo

NPDS : Gestion de contenu et de communauté


Content & Community Management System (CCMS) robuste, sécurisé, complet, performant, parlant vraiment français, libre (Open-Source) et gratuit.
26 visiteur(s) et 0 membre(s) en ligne.
Activité du Site

Pages vues depuis 25/05/2001 : 106 560 556

  • Nb. de membres 8 693
  • Nb. d'articles 1 695
  • Nb. de forums 26
  • Nb. de sujets 8
  • Nb. de critiques 92

Top 10  Statistiques

Index du forum »»  Questions »» Pb Mysql

Nouveau sujet
 Pb Mysql#25899Répondre

4Contributeur(s)
fliaigrecolonelwogdeveloppeurJireck
3 Modérateur(s)
developpeurjpbJireck
fliaigre fliaigreicon_post
Bonjour,

Voici le mail que je viens de recevoir d'infomaniak :

Cher client,

Il semble que certaines requêtes SQL de votre site pharmechange.com ne soient
pas suffisamment optimisées et entraînent une surconsommation de ressources
sur le serveur MySQL.

En l'occurrence, le serveur indique un total de 720 secondes pour seulement 1
requêtes. Le temps d'exécution semble trop important et les causes peuvent
être multiples:

- il manque un ou plusieurs indexes sur les tables utilisées dans la/les
requête/s
- la requête est mal écrite et examine un nombre de lignes incohérent
- le type des champs utilisés dans les tables sont inappropriés (varchar au
lieu de int, etc.)
- etc.


Dans le fichier log :


SELECT u.uid, f.forum_id, p.topic_id, p.post_id, u.uname, p.post_time, t.topic_title, f.forum_name, f.forum_type, f.forum_pass, f.arbre FROM posts p, users u, forums f, forumtopics t WHERE ( (p.post_text LIKE '%1%' or strcmp(soundex(p.post_text), soundex('1'))=0)) AND f.forum_type!='5' AND f.forum_type!='7' AND f.forum_type!='9' AND   p.topic_id = t.topic_id AND p.forum_id = f.forum_id AND p.poster_id = u.uid AND t.topic_status!='2' ORDER BY p.post_id and sleep(4)  DESC limit 0,100;



Quelqu'un peut t'il m'expliquer?

Merci
fliaigre fliaigreicon_post
L'entête :

# Query_time: 720 Lock_time: 0 Rows_sent: 0 Rows_examined: 0
use mabase;

J'ai de temps en temps une requête qui semble bugger comme ça.
fliaigre fliaigreicon_post
Personne?

A priori ça vient de searchbb.php

Mais pourquoi cette requête est elle si longue à exécuter?

Mon site est en REvolution 10.02
colonelwog colonelwogicon_post
peut être à cause du trop plein de ta base à chercher dans les tables trop remplies ...vérifie la taille de ta base ...
developpeur developpeuricon_post
Dans searchbb il n'y a aucun sleep ??? - la requête ressemble effectivement. En fait de mémoire je n’utilise jamais sleep ?

fliaigre fliaigreicon_post
Il est possible que ma base soit assez lourde mais, il n'y a pas de solution pour limiter la recherche en durée? C'est quoi sleep?

Et c'est quoi %1% dans WHERE ( (p.post_ text LIKE '%1%' ?

Et que dois je dire à Infomaniak?
developpeur developpeuricon_post
C'est équivalent à LIKE '*1*' - soit tous ce qui contient 1 (* avant et * après)

Le sleep est fait pour 'endormir' la requête pendant 4 secondes mais cela n'a pas de sens pour une recherche. J'ai vérifier - NPDS REvolution n'utilise pas de Sleep ???

Du peut reprendre un searchbb d'origine pour voir ?
fliaigre fliaigreicon_post
Excuse moi tu vas me trouver bouché mais tu entends quoi par "d'origine" parce que je n'y ai pas touché.
developpeur developpeuricon_post
de base ya pas de d'instruction sleep dans NPDS - si je regarde ton extrait de fichier log ... ya un sleep

==> J'en déduis que soit le fichier à été modifié ... soit ton hébergeur rajoute des trucs dans les requêtes ...
Jireck Jireckicon_post
Pas mieux
fliaigre fliaigreicon_post
Si je fais une recherche sur le mot sleep dans mon fichier searchbb.php je ne trouve rien.

Est il possible de lancer ce type de requëtes directement dans l'url?

%1% sont-ce les caractères envoyés par l'utilisateur?

Merci à vous deux.
developpeur developpeuricon_post
non impossible de lancer cette requête via l'URL

%1% = l'utilisateur cherche tous ce qui contient 1

Le sleep doit être rajouter par ton hébergeur ... ce qui est une mauvaise idée car son impact est toujours ... bizarre (même google dis la même chose) ...