9Aug

Utilisation d'un script MySQL Performance Tuning Analyzer

Lorsque vous travaillez sur l'augmentation de la vitesse de votre site Web, un élément très important est de s'assurer que vous obtenez chaque dernière baisse de performance de votre serveur de base de données. Malheureusement, pour la plupart d'entre nous qui ne sont pas normalement des administrateurs de bases de données, cela peut être une proposition difficile.

Un certain nombre de scripts d'optimisation des performances analysent les paramètres de votre serveur et son état actuel et vous fournissent des informations sur les modifications recommandées que vous devez effectuer. Vous ne devriez pas nécessairement suivre toutes les suggestions, mais cela vaut la peine de jeter un coup d'oeil de toute façon.

Le script que j'ai utilisé vous donne les recommandations suivantes:

  • Journal de requête lent
  • Connexions maximales
  • Worker Threads
  • Tampon de clé
  • Cache de requêtes
  • Buffer de tri
  • Joint
  • Tables temporaires
  • Table( Open & Definition) Cache
  • TableVerrouillage
  • Scans de table( read_buffer)
  • Statut Innodb
  • Une fois que vous avez téléchargé le script, vous devez le rendre exécutable avec la commande suivante:

    chmod + + tuning-primer.sh

    Si vous exécutez ce script en tant qu'utilisateur régulier, il vous demandera votre mot de passe, donc vous devrez vous assurer de définir l'accès en conséquence. Si vous l'exécutez en tant que root, il récupèrera le mot de passe mysql de Plesk si vous l'avez installé.

    J'ai découpé beaucoup de la sortie, qui avait beaucoup plus de recommandations, mais était juste trop long pour tenir sur la page.

    . /tuning-primer.sh

    - AMORCE D'ACCORD MYSQL PERFORMANCE -
    - Par: Matthew Montgomery -

    Version MySQL 4.1.20 i686

    Temps de disponibilité = 5 jours 10 h 46 min 5 sec
    Avg.qps = 4
    Total Questions = 2020809
    Threads connectés = 1

    Le serveur fonctionne depuis plus de 48 heures.
    Il devrait être prudent de suivre ces recommandations

    ---- snipped -----

    QUERY CACHE
    Le cache de requêtes est activé
    Current query_cache_size = 8 M
    Courant query_cache_used = 7 M
    Courant query_cach_limit = 1 M
    Cache de requête actueltaux de remplissage = 89.38%
    Cependant, 254246 requêtes ont été supprimées du cache de requêtes en raison du manque de mémoire
    Peut-être que vous devriez augmenter query_cache_size
    MySQL ne mettra pas en cache les résultats de requête plus grands que query_cache_limit en taille

    ---- snipped -----

    On dirait que j'ai besoin d'augmenter mon cache de requête. .. Je l'ai mis à seulement 8 Mo mais il nettoie le cache beaucoup trop souvent.

    ---- snipped -----

    TEMP TABLES
    Courant max_heap_table_size = 16 M
    Courant tmp_table_size = 32 M
    Sur 35170 tables temporaires, 74% ont été créées sur le disque
    Effectif en mémoire tmp_table_size est limité à max_heap_table_size.
    Vous devriez peut-être augmenter votre tmp_table_size et / ou max_heap_table_size
    pour réduire le nombre de tables temporaires sur disque
    Note! Les colonnes BLOB et TEXT ne sont pas autorisées dans les tables de mémoire.
    Si vous utilisez ces colonnes, l'augmentation de ces valeurs risque de ne pas avoir d'impact sur le rapport
    des tables temporaires sur le disque.

    ---- snipped -----

    Ce type d'information est inestimable lorsque vous essayez de régler les performances de votre site web.

    Télécharger MySQL Performance Tuning Primer Script