Maison >base de données >tutoriel mysql >Introduction aux requêtes lentes MySQL et EXPLAIN

Introduction aux requêtes lentes MySQL et EXPLAIN

零下一度
零下一度original
2017-05-12 11:04:031794parcourir

Préface : Aujourd'hui, les opérations de base de données deviennent de plus en plus le goulot d'étranglement des performances de l'ensemble de l'application, en particulier pour les applications Web. Concernant les performances de la base de données, ce n’est pas seulement quelque chose dont les administrateurs de base de données doivent s’inquiéter, mais c’est aussi quelque chose auquel nous, les programmeurs, devons prêter attention. Lorsque nous concevons la structure des tables de la base de données et exploitons la base de données (en particulier les instructions SQL lors de la recherche de tables), nous devons prêter attention aux performances des opérations sur les données.

1. Activer la requête lente

1> 查看慢查询是否开启
   show variables like "%quer%";
   slow_query_log = ON  #已开启

2> Activer la méthode : la configuration du répertoire my.cnf

  slow_query_log=on #是否开启
   slow_query_log_file=/opt/MySQL_Data/TEST1-slow.log #慢查询文件位置
   long_query_time=2 #查询超过多少秒才记录

2. Requête SELECT

expliquer l'explication de la colonne

table : indique de quelle table concerne cette ligne de données.

type : il s'agit d'une colonne importante, montrant la connexion utilisée. Quel type. Les types de jointure du meilleur au pire sont const, eq_reg, ref, range, index, all

possible_keys : affiche les index qui peuvent être appliqués à cette table. S'il est vide, aucun index n'est possible. Une instruction appropriée peut être sélectionnée à partir de l'instruction Where pour le domaine concerné

clé : l'index réel utilisé. Si nul, aucun index n’est utilisé. Rarement, MySQL sélectionnera un index sous-optimisé. Dans ce cas, vous pouvez utiliser use index (indexname) dans l'instruction select pour forcer l'utilisation d'un index ou utiliser ignore index (indexname) pour forcer MySQL à ignorer l'index

key_len : la longueur de l'index utilisé. Plus la longueur est courte mieux c'est sans perdre en précision

ref : Montre quelle colonne de l'index est utilisée, si possible, une constante

rows : mysql pense qu'il faut vérifier Le nombre de lignes utilisées pour renvoyer les données demandées

extra : informations supplémentaires sur la façon dont MySQL analyse la requête. Exemple : utiliser temporaire et utiliser le tri de fichiers, ce qui signifie que MySQL ne peut pas du tout utiliser les index, et le résultat est que la récupération sera très lente

[Recommandations associées]

1. Tutoriel vidéo en ligne MySQL gratuit

2.

Dernier tutoriel manuel MySQL

3. Ces choses sur la conception de bases de données

.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn