Quelques optimisations pour MySQL
Cette liste, donnée par Dublish.com, regroupe quelques bonnes astuces à prendre pour améliorer le traitement de vos donnée stockées sur votre SGBD.
La partie PHP n'est pas traitée ici puisqu'elle à fait le sujet d'un autre article publié précédement.
- MySQL interprète de la droite vers la gauche, de ce fait, mettez les signifiants limiteurs le plus loin possible de la droite.
- Sélectionnez les colonnes, plutôt que * (tout).
- Évitez de mettre des informations qui changent rarement dans la base de donnée, préférez les dans un tableau contenu dans un fichier que vous inclurez.
- Utilisez des indexes dans les colonnes contenues dans les clauses WHERE et ORDER BY.
- Les indexes sont très intéressants quand vous faites des recherches mais ralentissent considérablement l'insertion.
- Utilisez la requête "EXPLAIN" pour analyser vos indexes.
- Si vous ne voulez qu'une ligne de résultat, limitez votre requête avec la clause LIMIT 1; Cela aura pour effet de stopper MySQL à la première ligne trouvée plutôt que de continuer à parcourir TOUTE la table pour une donnée qui est déjà trouvée.
- Préferez un FETCH_ASSOC ou FETCH_NUM plutôt qu'un FETCH_BOTH qui déclarera deux variables par colonne au lieu d'une seule.
- Parfois, mysql_free_result (ou similaire en fonction de ce que vous utilisez) finis par consommer plus de mémoire qu'en gagner. Regardez la différence avec memory_get_usage ();.
- Évitez de demander à la base de donnée la même chose encore et encore. Stocker la requête et réutilisez la !
- Utilisez autant que possible NOT NULL en tant que valeur par défaut. Cela améliore l'éxécution et save 1 bit.
- Utilisez des types de colonnes qui correspondent à votre utilisation. Un INT non signé peux contenir jusqu'à 4294967295 valeurs. En avez-vous vraiment besoin ? Préférez l'utilisation de SMALLINT ou TINYINT en fonction de l'usage.
- Profitez des valeurs par défaut. Lors de l'insertion, insérer que ce qui n'est pas valeur par défaut afin d'améliorer l'insertion.
Beaucoup de choses sont logiques, d'autres le son après la lecture.
En suivant ces quelques règles, ainsi que celles sur le php, vous pourrez améliorer l'éxécution de votre code considérablement.
Ce qui est un avantage quand le nombre de visiteur augmente !