Problème de lenteur avec MySQL sur une table de 10 millions d'entrées

MySQL, PostgreSQL, requetes, optimisation
zed33
Messages : 790
Inscription : lun. oct. 16, 2023 7:24 pm

Problème de lenteur avec MySQL sur une table de 10 millions d'entrées

Message par zed33 »

Salut à tous, j'ai une table MySQL avec plus de 10 millions d'entrées et les requêtes SELECT sont très lentes (plus de 5 secondes). J'ai déjà ajouté des INDEX sur les colonnes fréquemment interrogées mais ça ne suffit pas. Des idées ?
max1965
Messages : 247
Inscription : mer. mai 08, 2024 7:24 pm

Re: Problème de lenteur avec MySQL sur une table de 10 millions d'entrées

Message par max1965 »

As-tu vérifié ton plan d'exécution avec EXPLAIN ? Parfois, MySQL utilise un mauvais index même s'il existe. Aussi, as-tu pensé à partitionner ta table ?
Full AMD, full silence
le_julien
Messages : 280
Inscription : sam. sept. 28, 2024 7:24 pm

Re: Problème de lenteur avec MySQL sur une table de 10 millions d'entrées

Message par le_julien »

Je confirme pour le partitionnement. Sur une table de cette taille, ça peut diviser le temps par 10. Par contre, attention à bien choisir la clé de partitionnement !
zed33
Messages : 790
Inscription : lun. oct. 16, 2023 7:24 pm

Re: Problème de lenteur avec MySQL sur une table de 10 millions d'entrées

Message par zed33 »

Merci pour les conseils. J'ai utilisé EXPLAIN et effectivement, il ignore parfois mes indexes. Pour le partitionnement, vous recommandez quel type ? RANGE, LIST ?
flo92
Messages : 426
Inscription : mer. juil. 02, 2025 7:25 pm

Re: Problème de lenteur avec MySQL sur une table de 10 millions d'entrées

Message par flo92 »

Tout dépend de tes données. Si tu as une colonne de date, RANGE est souvent le plus adapté. Sinon, LIST peut être bien pour des catégories prédéfinies. Et n'oublie pas d'optimiser tes variables MySQL comme innodb_buffer_pool_size !
Répondre