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 :

Optimiser les tables mysql, nécessaire ? [FAQ]


Sujet :

Requêtes MySQL

  1. #1
    Expert éminent
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : juillet 2003
    Messages : 3 497
    Points : 8 146
    Points
    8 146
    Par défaut Optimiser les tables mysql, nécessaire ?
    bonjour,
    je voudrais savoir si ça vaut la peine de faire une optimisation des tables mysql assez souvent ou non. j'ai vu que ça fait gagner un peu de place, mais ça n'endommage aucune donnée ? est-ce que la base de données est accessible pendant l'optimisation : c'est pour savoir si je dois interdire l'accès à mon site pendant l'optimisation.

    ma base de données risque de devenir volumineuse à terme...


  2. #2
    Membre régulier
    Inscrit en
    juin 2004
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : juin 2004
    Messages : 93
    Points : 73
    Points
    73
    Par défaut
    Dans l'entreprise ou je fait mon stage on a que des bases mysql et on gère des grosses tables, du genre tables des communes de frances ( 36000 et des poussières occurences).

    Et on optimise rien du tout.

  3. #3
    Rédacteur

    Homme Profil pro
    Geek entrepreneur
    Inscrit en
    novembre 2004
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Geek entrepreneur

    Informations forums :
    Inscription : novembre 2004
    Messages : 1 224
    Points : 2 379
    Points
    2 379
    Par défaut
    je suis pas sur que ce soit une référence alors ^^

    Cette commande sert surtout lorsqu'on efface régulièrement des données dans une table qui comporte des données dynamiques (varchar, blob, text).
    Cette commande permet de récupérer l'espace utilisé et défragmenter le fichier de données.

    D'après la doc :

    OPTIMIZE TABLE fonctionne comme ceci :
    Si la table contient des lignes effacées ou des lignes fragmentées, la table est compactée.
    Si les pages d'index ne sont pas triées, OPTIMIZE TABLE les trie. Si les statistiques ne sont pas à jour (et que la table n'a pas pu effectuer de réparation en triant l'index), elles sont mises à jour.
    Le calcul des statistiques permet aussi d'accélérer les traitements.

  4. #4
    Expert éminent
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : juillet 2003
    Messages : 3 497
    Points : 8 146
    Points
    8 146
    Par défaut
    Kylen, tu n'as peut-être pas besoin de supprimer/éditer souvent les données, ce serait pour ça que vous vous en passez

    quant à moi, je suis en train de coder mon forum et les données sont en varchar et text (plus celles en tinyint, smallint). j'ai l'impression que cette commande serait intéressante.

    Citation Envoyé par hugo123
    Le calcul des statistiques permet aussi d'accélérer les traitements.
    comment ça ?

    et pendant l'optimisation, est-ce que j'ai besoin de vérouiller l'accès à la bdd et donc mon site ? ou est-ce que cette commande peut tourner sans être génée par les autres requêtes si ce n'est celles provoquées par des membres ? (UPDATE, SELECT, DELETE et INSERT)


  5. #5
    Rédacteur

    Homme Profil pro
    Geek entrepreneur
    Inscrit en
    novembre 2004
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Geek entrepreneur

    Informations forums :
    Inscription : novembre 2004
    Messages : 1 224
    Points : 2 379
    Points
    2 379
    Par défaut
    A priori, d'après la doc, la table est vérouillé pendant son optimisation par mysql.

    hugo123 a écrit:
    Le calcul des statistiques permet aussi d'accélérer les traitements.
    comment ça ?
    Si mysql marche comme oracle, avant d'executer une requête mysql va calculer le meilleur cout de passage suivant les statistiques. Mysql peut estimer que passer par un index ou un autre est plus ou moins intéressant selon les statistiques qu'il a sur une table. Si les statistiques ne sont pas a jour, ce calcul sera erroné et mysql ne prendra pas forcément le bon choix pour l'optimisation des requêtes.
    Recalculer les statistiques est donc important pour des grosses tables qui subissent des requêtes complexes.

  6. #6
    Expert éminent
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : juillet 2003
    Messages : 3 497
    Points : 8 146
    Points
    8 146
    Par défaut
    ok donc par sécurité, il vaut mieux que je vérouille le site aussi.


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ou sont les tables Mysql ?
    Par garnier54 dans le forum Administration
    Réponses: 0
    Dernier message: 27/05/2012, 19h05
  2. [AC-2003] importation de donnée excel vers access : comment optimiser les tables ?
    Par pshd22 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 31/03/2009, 19h17
  3. Réponses: 5
    Dernier message: 18/07/2008, 13h40
  4. Optimiser les paramètres MySQL - appel aux experts
    Par SuperCed dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 04/12/2006, 13h26
  5. Optimiser les tables
    Par blizar dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 04/06/2004, 09h34

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