optimisation MySQL expliquer

Dans l'optimisation MYSQL par jour, on voit souvent un tel Mots-clés: expliquer, Tels que ceci:

EXPLIQUER SELECT * FROM Cloud_Order où l'argent >  10;

 Expliquez quel est-il? Utilisez EXPLIQUEZ mot-clé permet de simuler optimiseur de requêtes SQL pour effectuer, ils savent comment gérer votre MySQL est une instruction SQL. Cela peut vous aider à analyser les goulots d'étranglement dans la structure de votre requête ou une table. commande Expliquer peut être obtenue par:

  • Table de lecture de commande
  • lecture type d'opération d'exploitation des données
  • Quels indices peuvent être utilisés
  • Quels indices sont effectivement utilisés
  • Références entre les tables
  • Chaque table de nombre de lignes de l'optimiseur de requêtes
  •  Tout d'abord, penchons-nous sur les résultats de l'utilisation d'entrée EXPLIQUER

     Les résultats montrent que la sortie des résultats d'un groupe de champs et les valeurs correspondantes, mais ces champs Qu'est-ce que cela signifie? Quelle est la valeur correspondante est-il? Comment analyser ces domaines afin d'optimiser les performances de SQL et de le faire? Ne vous inquiétez pas, nous avons analysé un par un ensemble ci-dessous.

    Analyse sur le terrain EXPLANIN id: identificateur SELECT. Ceci est un numéro de séquence de requête SELECT select_type: SELECT type, peut être une des conditions suivantes · SIMPLE: Simple SELECT (ne pas utiliser UNION ou sous-requêtes) · PRIMAIRE: le plus à l'extérieur SELECT · UNION: UNION dans la deuxième déclaration SELECTS · UNION DEPENDANT: UNION dans la deuxième déclaration SELECTS, selon l'extérieur d'enquête · RÉSULTAT DE L'UNION: Résultats UNION · Sous-requête: première sous-requête SELECT · DEPENDANT sous-requête: la première sous-requête SELECT, selon une enquête extérieure · DÉRIVÉS: table d'exportation SELECT (clause DE sous-requêtes) Tableau: données d'affichage de cette ligne est dont les tables de Type: C'est l'un des plus importants champs, affichez la requête à l'aide de quel type. Du meilleur au pire système de type de connexion, const, eq_reg, ref, plage, index et ALL. Les types sont donnés ci-dessous, en fonction du type commandé du meilleur au pire type: · Système, const: les variables de requête sous forme de constantes peut être converti en id = 1; id est une clé principale ou une clé unique. · Eq_ref: l'accès à l'index pour retourner une seule ligne de données (surviennent généralement lors de la connexion, l'indexation de requête à l'aide de la clé primaire ou clé unique). Lors de l'accès de l'index, renvoie une valeur de données (peut renvoyer plusieurs lignes) utilisent typiquement =: · ref. · Gamme: Renvoie l'index de ce type de connexion utilisé dans une gamme de lignes, telles que l'utilisation > ou < Trouver quelque chose, et ce qui se passe quand il y a un indice construit sur le terrain (note: pas nécessairement mieux que l'indice) · Indice: l'indice de l'ordre d'un scan de table, l'avantage ne sont pas triées, l'inconvénient est également une analyse complète de la table · ALL: analyse complète de la table doit être évitée possible_keys: affiche l'index dans ce tableau peut appliquer. Si elle est vide, l'indice est impossible. Peut être choisi dans une déclaration appropriée clause WHERE pour le domaine associé clé: l'indice d'utilisation réelle. Si NULL, alors ne pas utiliser l'index. Peu MYSQL choisira moins que l'optimisation de l'index, vous pouvez utiliser USE INDEX (index) pour forcer l'utilisation d'un indice ou IGNORE INDEX (index) pour forcer l'index ignoré dans l'instruction SELECT key_len: longueur de l'indice utilisé. Sans perte de précision, d'une longueur aussi courte que possible ref: indice de colonne d'affichage qui est utilisée, si possible, est une constante lignes: MySQL jugées nécessaires pour retourner le nombre de lignes extraites de données demandées filtré: indique le pourcentage du nombre estimé de lignes filtrées à travers conditions. Supplémentaire: plus d'informations sur l'analyse des requêtes MYSQL, sont les suivants · Distinct: MySQL après la découverte d'une ligne correspondant à la recherche d'arrêt de la combinaison actuelle de rangée pour plus de lignes. · Plage vérifié pour chaque enregistrement (carte index: #): MySQL n'a pas trouvé bon index peut être utilisé, mais trouve l'avant des valeurs de la colonne de la table si elle est connue, peut faire partie de l'indice peut être utilisé. · Using index: utilisez uniquement l'index pour éviter d'accéder à la table. · L'utilisation tmporary: utiliser une table temporaire · Utiliser où: où utiliser toutes les données est de ne pas faire trop de soucis where à afficher à l'aide lorsque cet indice d'accès = ... · L'utilisation filesort: MySQL nécessite passe un supplémentaire pour savoir comment récupérer les lignes dans l'ordre. expliquer la pratique

     Cela dit, la pratique de la vraie connaissance. Gardons un peu de notre optimisation SQL par un exemple simple.

     Tout d'abord nous une table de données, par exemple. Le tableau structuré comme suit.

    Ceci est un formulaire de commande typique, nous pouvons omettre les autres champs ne regardent pas, nous pouvons regarder un champ d'argent, il est fondamentalement un bon de commande sera utilisé dans le domaine. En raison du temps, je l'ai préparé à l'avance un tas de données analogiques pour ce tableau.

     Comme on peut le voir sur le graphique, le tableau a dix mille données, nous allons écrire une requête basée sur des commandes SQL argent conditions.

     Les résultats ne peuvent dire que le chiffre de moins que satisfaisant. Revenons à l'analyse précédente expliquer sur le terrain, où la valeur du champ de type est ALL, selon l'analyse, ce tableau avec une recherche complète de la table, nous devrions essayer d'éviter! ! ! Regardez champ lignes, la valeur est 16242, mon Dieu! ! Tous les dossiers vont demander, puis lent pour une raison.

     Eh bien, par l'analyse des données ci-dessus, nous pouvons penser, si les champs d'argent, nous pouvons ajouter un index pour améliorer la vitesse requête? En raison de ces résultats, il semble inutile de l'indice. Ado, nous allons ajouter un champ d'index pour l'argent

     Après avoir ajouté un index, puis nous regardons juste au EXPLAIN est exécuté, le temps est venu pour assister au miracle!

     Après avoir ajouté l'indice, la même instruction SQL, le résultat est complètement différent, champ de type dans une gamme, nous avons également vu des spectacles clés de l'argent, prouvé la valeur de l'indice utilise. Plus important encore, les lignes dans un champ 785, par rapport à l'original ne savent combien moins, nous pouvons imaginer à quel point la performance est améliorée!

     Eh bien, ce qui précède est simplement expliquer la pratique.

    résumé

     Nous pouvons faire l'analyse différemment sql originale expliquer, il peut être analysé en utilisant l'index, vous pouvez savoir que c'est un rôle rapide ou lent SQL SQL, EXPLIQUER est de nous aider à montrer les goulots d'étranglement de performances SQL et chaque articles peuvent produire, ce qui a pour nous d'optimiser les requêtes mSQL importantes, eradicate champ EXPALIN retourné des résultats différents, nous pouvons ralentir le SQL d'origine transformer un.

    Adresse réimprimer: https: //blog.51cto.com/13475644/2352985

    auteur du blog eflypro petit général des uvres originales

    LPL fenêtre de transfert ouvert, nous exploits joueurs quitter l'équipe annoncée! Triste de trouver un contenu d'affichage d'emploi
    Précédent
    2018 Ford Focus RS édition limitée limitée poussée outre-mer 1500
    Prochain
    vivo NEX de l'exposition d'affiches: top avec le soutien 22.5W frais super rapide
    Le Rapper domestique souvent Torse marque Guochao, dans la version tour 2017 Winter Series!
    fonctionnement primaire Linux et la maintenance (trois) - les droits des utilisateurs de Linux et la gestion
    Le nouveau BMW X5 est un « bon jeune homme », mais il ne peut pas secousse pilote automatique
    Les équipes du Groupe transfert LCK des grands joueurs, ils peuvent survivre dans les mains de IG 30 minutes il?
    2018 modèles CM7 populaires officiellement mis en vente Wan 16,99 à 22,99
    Vous avez lu un article avec Computer Vision
    Les compétences sont plus qu'annuelle phare du corps: 8 expérience sur le terrain de mil
    Suite à la « votre nom. « Après Shinkai a un nouveau travail, ce temps peut contrôler la présentatrice météo!
    Biyaditang nouveaux modèles de prix soupçonnés / exposition partielle
    Poignet nouveau favori: la main multi-fonction pour le mil non Bague main évaluation 3 expérience
    Pourquoi IG S8 est le champion du monde? ning en direct a révélé des détails! Utilisateur: vous méritez d'être champions