Maison > Article > base de données > Introduction détaillée à l'analyse des requêtes lentes MySql et à l'activation des journaux de requêtes lentes
Cet article présente principalement l'analyse détaillée des requêtes lentes de MySql et comment activer le journal des requêtes lentes. Il a une certaine valeur de référence et les amis intéressés peuvent s'y référer.
Je suis également sur le point d'étudier MySQLoptimisation des performances récemment, donc aujourd'hui peut être considéré comme une note d'étude !
Dans les projets développés par nos amis, pour dépanner les problèmes MySQL et trouver les goulots d'étranglement de performances, les problèmes les plus faciles à trouver et à résoudre sont les requêtes lentes de MYSQL et les requêtes qui n'utilisent pas d'index.
Ensuite, je vais vous apprendre comment activer la journalisation lente des requêtes pour MySQL version 5.0 ou supérieure
OK, commençons par découvrir les instructions SQL dans MySQL qui ne sont pas « simples » à exécuter ; exécuter.
Tout d'abord, nous entrons dans la ligne de commande mysql via la commande mysql :
[root@yunuo_vm ~]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4977 Server version: 5.6.17 Source distribution Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
ps : La version MySQL ici est 5.6.17
OK, entrez dans la console, Vérifions ensuite combien de secondes sont considérées comme des requêtes lentes dans la configuration par défaut de MySQL
mysql> show variables like 'long%'; +-----------------+-----------+ | Variable_name | Value | +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+ 1 row in set (0.00 sec)
Comme le montre le tableau ci-dessus, la limite de temps de requête lente par défaut du système est de 10 secondes. (Vous pouvez aussi décider en fonction de votre situation réelle)
mysql> set long_query_time=1; 注: 我设置了1, 也就是执行时间超过1秒的都算慢查询。 Query OK, 0 rows affected (0.00 sec)
Oh ! Enfin, vérifions si MySQL a activé la journalisation des requêtes lentes ;
mysql> show variables like 'slow%'; +---------------------+---------------+ | Variable_name | Value | +---------------------+---------------+ | slow_launch_time | 2 | | slow_query_log | OFF | | slow_query_log_file | /tmp/slow.log | +---------------------+---------------+
ps :
slow_query_log //Si la journalisation est activée
slow_query_log_file //Stockage des journaux location
MySQL n'active pas les requêtes lentes par défaut. Activons-le :
mysql> set global slow_query_log='ON'; Query OK, 0 rows affected (0.00 sec)
C'est tout ! ! ! N'est-ce pas très simple ?
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!