Revlyukd Posted July 20, 2017 Share Posted July 20, 2017 Bonjour, J'ai depuis quelques semaines des lenteurs dûes à MySQL. La base de données augmente et même localement certaines requêtes dans phpmyadmin peuvent mettre 50 sec, notamment pour lister les produits avec les sous-requêtes que fait PS. La base MySQL esst en innoDB et je pense que cela vient des index qui ne sont pas optimisés car quelques semaines auparavant c'était rapide, mais avec l'augmentation sensible du catalogue cela devient très lent. Version PS 1.6.0.8 Avez-vous des pistes, peut-être igrer en MySAM ou autres optimisations ? Merci Link to comment Share on other sites More sharing options...
doekia Posted July 20, 2017 Share Posted July 20, 2017 1/ MyISAM est plus lent sur les grosses tables 2/ Ton engine InnoDB est-il tuné ? 3/ 1.6.0.8? il serait peut-etre temps de quitter les version béta d'il y a 3 ans (migrer 1.6.1.15) 4/ Vérifie justement si tu as tous les index natifs 5/ Tu parle de catalogue qui grandi, quelle volumétrie? Link to comment Share on other sites More sharing options...
Revlyukd Posted July 20, 2017 Author Share Posted July 20, 2017 1/ MyISAM est plus lent sur les grosses tables 2/ Ton engine InnoDB est-il tuné ? 3/ 1.6.0.8? il serait peut-etre temps de quitter les version béta d'il y a 3 ans (migrer 1.6.1.15) 4/ Vérifie justement si tu as tous les index natifs 5/ Tu parle de catalogue qui grandi, quelle volumétrie? Le InnoDB n'est pas tuné Oui ça serait bien de passer en 1.6.1.15 mais c'est quand même du travail, je prévois de le faire. Aucun index n'a été changé La taille du catalogue n'est pas immense, 521 produits, 7344 attributs, 22000 images J'ai testé une requete et cela est lent sur toutes les tables : Sur une base de quelques mois : MySQL returned an empty result set (i.e. zero rows). ( Query took 0.0127 sec ) SELECT SQL_NO_CACHE p.*, product_shop.*, stock.out_of_stock, IFNULL(stock.quantity, 0) as quantity, pl.`description`, pl.`description_short`, pl.`link_rewrite`, pl.`meta_description`, pl.`meta_keywords`, pl.`meta_title`, pl.`name`, pl.`available_now`, pl.`available_later`, MAX(image_shop.`id_image`) id_image, il.`legend`, m.`name` AS manufacturer_name, product_shop.`date_add` > "2017-05-21" as new, MAX(product_attribute_shop.id_product_attribute) id_product_attribute FROM `ps_product` p INNER JOIN ps_product_shop product_shop ON (product_shop.id_product = p.id_product AND product_shop.id_shop = 1) LEFT JOIN `ps_product_lang` `pl` ON p.`id_product` = pl.`id_product` AND pl.`id_lang` = 1 AND pl.id_shop = 1 LEFT JOIN `ps_image` `i` ON i.`id_product` = p.`id_product` LEFT JOIN ps_image_shop image_shop ON (image_shop.id_image = i.id_image AND image_shop.id_shop = 1 AND image_shop.cover=1) LEFT JOIN `ps_image_lang` `il` ON i.`id_image` = il.`id_image` AND il.`id_lang` = 1 LEF[...] Et maintenant : MySQL returned an empty result set (i.e. zero rows). ( Query took 45.2324 sec ) SELECT SQL_NO_CACHE p.*, product_shop.*, stock.out_of_stock, IFNULL(stock.quantity, 0) as quantity, pl.`description`, pl.`description_short`, pl.`link_rewrite`, pl.`meta_description`, pl.`meta_keywords`, pl.`meta_title`, pl.`name`, pl.`available_now`, pl.`available_later`, MAX(image_shop.`id_image`) id_image, il.`legend`, m.`name` AS manufacturer_name, product_shop.`date_add` > "2017-05-21" as new, MAX(product_attribute_shop.id_product_attribute) id_product_attribute FROM `ps_product` p INNER JOIN ps_product_shop product_shop ON (product_shop.id_product = p.id_product AND product_shop.id_shop = 1) LEFT JOIN `ps_product_lang` `pl` ON p.`id_product` = pl.`id_product` AND pl.`id_lang` = 1 AND pl.id_shop = 1 LEFT JOIN `ps_image` `i` ON i.`id_product` = p.`id_product` LEFT JOIN ps_image_shop image_shop ON (image_shop.id_image = i.id_image AND image_shop.id_shop = 1 AND image_shop.cover=1) LEFT JOIN `ps_image_lang` `il` ON i.`id_image` = il.`id_image` AND il.`id_lang` = 1 LEF[...] Profiling[ ] [ ] Link to comment Share on other sites More sharing options...
doekia Posted July 20, 2017 Share Posted July 20, 2017 7300 attributs ou déclinaisons. Link to comment Share on other sites More sharing options...
Revlyukd Posted July 20, 2017 Author Share Posted July 20, 2017 Déclinaisons = combinations Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now