Page 1 sur 1

Erreur Mysql: Server shutdown in progress

Posté : 20 janv. 2006, 16:27
par bvde
Je reçois le message:
Server shutdown in progress SELECT (...)
La requete est assez lourde (plusieurs table, et des milliers d'enregistrement)
QQ'un a t-il déjà eu ce message ?
Une idée vers ou chercher ?

Posté : 20 janv. 2006, 16:31
par albat
Modération :
Le forum "SQL et Bases de données" est peut-être plus adapté, non ?... ;)

Posté : 20 janv. 2006, 17:07
par Hubert Roksor
Ce message signifie que quelqu'un a annulé ta requête. [ voir KILL ]

Si tu es sur un hébergement mutualisé il se pourrait que ton hébergeur est un système automatique pour annuler les requêtes qui mettent trop longtemps à s'exécuter.

Au fait, j'ai personnellement des requêtes sur plusieurs tables (3+) et des millions d'enregistrements qui s'executent en une fraction de seconde, peut-être y a-t'il une erreur dans ta requête qui la rend très lente ?

Posté : 20 janv. 2006, 17:09
par albat
Si tu es sur un hébergement mutualisé
il se pourrait que ton hébergeur ait un système automatique
pour annuler les requêtes qui mettent trop longtemps à s'exécuter.
Il n'y a pas un TimeOut qui plante par défaut les requêtes trop longues ?

À part ça, la requête incriminée mérite certainement d'être optimisée, en effet.

Posté : 20 janv. 2006, 17:13
par Invité
Si tu es sur un hébergement mutualisé il se pourrait que ton hébergeur est un système automatique pour annuler les requêtes qui mettent trop longtemps à s'exécuter.

Au fait, j'ai personnellement des requêtes sur plusieurs tables (3+) et des millions d'enregistrements qui s'executent en une fraction de seconde, peut-être y a-t'il une erreur dans ta requête qui la rend très lente ?
Me reste donc a optimiser mes requetes.
Comment optimiser une requete sur plusieurs tables. Y a t-il un site qui explique cela ?

Posté : 20 janv. 2006, 17:30
par albat
Il y a 36 astuces pour optimiser une requête.
Tout dépend de celle-ci.

Posté : 20 janv. 2006, 17:42
par Invité
Il y a 36 astuces pour optimiser une requête.
Tout dépend de celle-ci.
Je ne maitrise pas trop les index
SELECT pxphotos.id, pxphotos.phnom
FROM pxphotos , idxcategorie , idxepoque , idxkeywords
WHERE pxphotos.valider='yes'
AND pxphotos.id=idxcategorie.id_photo
AND idxcategorie.terme='notre présélection'
AND pxphotos.id=idxepoque.id_photo
AND idxepoque.terme='Moyen Age'
AND pxphotos.id=idxkeywords.id_photo
AND idxkeywords.terme='bâtiments civils'
ORDER BY pxphotos.id ;
AVEC
id PRIMARY KEY UNIQUE pour pxphotos , idxcategorie , idxepoque , idxkeywords
terme dans idxcategorie, idxepoque, idxkeywords = INDEX

et un EXPLAIN me donne:

table type possible_keys key key_len ref rows Extra
idxkeywords ref terme terme 41 const 537 where used; Using temporary; Using filesort
pxphotos eq_ref PRIMARY PRIMARY 4 idxkeywords.id_photo 1 where used
idxcategorie ALL terme NULL NULL NULL 7853 where used
idxepoque ALL terme NULL NULL NULL 8020 where used

Ce sont les ALL et NULL qui m'interpelle