IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

[votre Avis] statistiques MySQL


Sujet :

Requêtes MySQL

  1. #1
    Membre averti
    Avatar de if_zen
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 275
    Points : 317
    Points
    317
    Par défaut [votre Avis] statistiques MySQL
    Bonsoir,

    J'aurais aimé avoir votre avis sur les statistiques que me propose mySQL. Je ne suis pas certain que la base soit optimiséeà fond.

    Certaines erreurs semblent remonter du fait que les index sont mal créés. Après lecture du fichier de log (*slow.log) il s'avère des accès touchant les mêmes tables sont souvent présents (du style select * from nom_table where id=42), mais les index sur les clefs primaires et étrangères sont pourtant bien renseignés.
    Peuvent-ils être corrompus ? Faut-il les recréer ?


    Pour info, j'ai également des doutes sur le fichier de config de mySQL. le dossier /etc/mysql contenant my.cnf contient une cinquantaine de lignes du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    -rw-r--r-- 1 root root 4286 2007-10-23 09:06 /etc/mysql/my.cnf.maold30
    Les fichiers ont été créés du 22-10 à aujourd'hui, de maold1 à maold67, créé ce matin.
    Est-ce normal ? Une tâche cron qui les regénère peut-être ?

    Voici une image tirée des stats fournies par phpmyadmin. Si vous avez des tuyaux pour optimiser je vous en serais extrèmement reconnaissant !



    Enfin, un extrait du fichier de configuration mySQL que j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    [client]
    port		= 3306
    socket		= /var/run/mysqld/mysqld.sock
     
    [mysqld_safe]
    socket		= /var/run/mysqld/mysqld.sock
    nice		= 0
     
    [mysqld]
    user		= mysql
    pid-file	= /var/run/mysqld/mysqld.pid
    socket = /var/run/mysqld/mysqld.sock
    port = 3306
    basedir		= /usr
    datadir = /home/mysql
    tmpdir		= /tmp
    language	= /usr/share/mysql/english
    lower_case_table_names	= 1
    key_buffer_size=2048M
    max_allowed_packet	= 16M
    thread_stack=128
    thread_cache_size=16
    query_cache_limit=8M
    query_cache_size=2048M
    log_bin			= /var/log/mysql/mysql-bin.log
    expire_logs_days=7
    max_binlog_size=100M
    skip-bdb
    sort_buffer_size=1M
    myisam_max_extra_sort_file_size=256M
    myisam_sort_buffer_size=256M
    myisam_max_sort_file_size=256M
    innodb_thread_concurrency=18
    skip-innodb
    server-id=1
    table_cache=800
    read_buffer_size=1M
    read_rnd_buffer_size=1M
    thread_concurrency=16
    join_buffer_size=1M
     
    max_heap_table_size=32M
    log-slow-queries=/home/mysql/ict10-slow.log
    long_query_time=5
    log-error=/home/mysql/mysql.err
    log-bin=/home/mysql/mysql.binary.log
    log=/home/mysql/mysql.querry.log
     
    [mysqldump]
    quick
    quote-names
    max_allowed_packet	= 16M
     
    [mysql]
     
    [isamchk]
    key_buffer		= 16M
     
    !includedir /etc/mysql/conf.d/
    # ... qui contient 
    # [mysqld]
    # old_passwords = false

    Qu'en pensez-vous ? Si vous avez la moindre idée d'optimisation je suis preneur !

    Un grand merci d'avance et bonne soirée à vous.

  2. #2
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    slt...

    En regardant rapidement les statics, une chose ressort: tes jointures doivent etres mal faites...

    Regarde celles qui posent problemes, et corrige

  3. #3
    Membre averti
    Avatar de if_zen
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 275
    Points : 317
    Points
    317
    Par défaut
    Bonsoir,

    En effet c'est ce que semblent dire les stats, mais, en supposant que tous les index soient créés sur les ID, y'a-t-il une façon particulière pour éviter ce genre de lacunes ?
    J'utilise principalement des LEFT JOIN pour mes jointures, du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT *
    FROM TABLEA A
    LEFT JOIN TABLEB B ON (A.IDB=B.ID)
    Enfin c'est juste pour donner une idée globale de ce qui se fait, mais apparemment ça ne suffit pas à avoir quelque chose d'optimisé.

    Des idées ? Merci !

Discussions similaires

  1. Formation PHP/MYSQL votre avis!
    Par stephanech dans le forum Stages
    Réponses: 2
    Dernier message: 02/01/2009, 12h20
  2. Qui se sert de Together ici ? votre avis ?
    Par Matthieu Brucher dans le forum Autres
    Réponses: 28
    Dernier message: 25/08/2006, 09h44
  3. Réponses: 4
    Dernier message: 26/04/2006, 14h36
  4. [Mysql][JDBC] Votre avis !
    Par sebb84 dans le forum JDBC
    Réponses: 5
    Dernier message: 07/12/2004, 14h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo