J'ai des requêtes Mysql très lentes venant de mon site wordpress. Cela ralentit tout et je pense que cela consume l'utilisation du processeur. J'ai collé les résultats Explain pour les deux requêtes les plus fréquemment problématiques ci-dessous. C'est un résultat typique - bien que très rarement les requêtes semblent être effectuées à une vitesse plus normale. Je possède les index wordpress habituels sur les tables de base de données. Vous verrez que l'une des requêtes est générée à partir du code de base wordpress, et non de quelque chose de spécifique - comme le thème - pour mon site.wordpress générant des requêtes mysql lentes - est-ce un problème d'index?
J'ai un vague sentiment que la base de données ne sont pas toujours en utilisant les index/ne les utilise pas correctement ...
Est-ce exact? Est-ce que quelqu'un sait comment le réparer? Ou est-ce un problème différent entièrement?
Un grand merci à l'avance pour toute aide quiconque peut offrir - il est extrêmement apprécié
Requête: [wp-blog-header.php (14): wp()]
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private') ORDER BY wp_posts.post_date DESC LIMIT 0, 6
id
select_type
table
type
possible_keys
key
key_len
ref
rows
Extra
1
SIMPLE
wp_posts
ref
type_status_date
type_status_date
63
const
427
Using where; Using filesort
Query time: 34.2829 (ms)
9) Question: [wp-content/themes/MLDH/index.php (40): query_posts()]
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.ID NOT IN (SELECT tr.object_id FROM wp_term_relationships AS tr INNER JOIN wp_term_taxonomy AS tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE tt.taxonomy = 'category' AND tt.term_id IN ('217', '218', '223', '224')) AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private') ORDER BY wp_posts.post_date DESC LIMIT 0, 6
id
select_type
table
type
possible_keys
key
key_len
ref
rows
Extra
1
PRIMARY
wp_posts
ref
type_status_date
type_status_date
63
const
427
Using where; Using filesort
2
DEPENDENT SUBQUERY
tr
ref
PRIMARY,term_taxonomy_id
PRIMARY
8
func
1
Using index
2
DEPENDENT SUBQUERY
tt
eq_ref
PRIMARY,term_id_taxonomy,taxonomy
PRIMARY
8
antin1_lovemusic2010.tr.term_taxonomy_id
1
Using where
Query time: 70.3900 (ms)
J'ai édité vos requêtes pour ressembler à du code, mais je ne comprends pas ce que le texte et la fin est. Est-ce que vous l'avez collé quelque part et que vous y avez envoyé un texte indésirable quelque part? –
@JS Bangs Je pense que c'est MySQL "EXPLAIN" résultat de la commande de la grille. – antyrat