mysql enregistre le SQL chronophage
mysql peut enregistrer le SQL fastidieux ou le SQL d'index inutilisé dans le journal lent à des fins d'optimisation et d'analyse. Cet article présente principalement les informations pertinentes sur l'explication détaillée des exemples SQL chronophages d'enregistrement Voici la méthode d'implémentation. Les amis qui en ont besoin peuvent s'y référer.
1. Activez le journal des requêtes lentes mysql :
Le journal des requêtes lentes mysql est très utile pour suivre les requêtes problématiques et peut analyser les requêtes gourmandes en ressources dans le courant programme.instruction SQL, comment ouvrir l'enregistrement du journal des requêtes lentes de MySQL ?
mysql> show variables like 'log_slow_queries'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | log_slow_queries | OFF | +------------------+-------+ 1 row in set (0.01 sec) mysql>
Cela signifie que la fonction de journalisation lente n'est pas activée. devez modifier le fichier de configuration mysql. Ajoutez les deux paramètres suivants au fichier de configuration "[mysqld]":
long_query_time=1 log-slow-queries=/var/mysql/logs/slow.log
Description
long_query_time
Ce paramètre représente le temps de mesure d'une requête lente, l'unité est la seconde, le minimum est 1, la valeur par défaut est 10, toute instruction SQL dont le temps d'exécution dépasse long_query_time sera enregistré dans le journal des requêtes lentes
log-slow-queries[=file_name]
Le paramètre file_name est facultatif. La valeur par défaut est host_name. -slow.log. Si le paramètre file_name est spécifié, mysql Le journal des requêtes lentes sera enregistré dans le fichier défini par file_name. Si file_name fournit un chemin relatif, mysql enregistrera le journal dans le répertoire de données de mysql. être ajouté dans le fichier de configuration et ne peut pas être ajouté dans le fichier de configuration. Exécuté à partir de la ligne de commande.
2. Configuration de l'enregistrement des requêtes d'index inutilisées dans le journal lent
Ajouter "log_queries_not_using_indexes" dans le fichier de configuration de démarrage MySQL ou les paramètres de ligne de commande " peut être utilisé pour ajouter des instructions de requête d'index inutilisées au journal lent.
L'exemple est le suivant :
[root@localhost mysqlsla-2.03]# more /etc/my.cnf [mysqld] datadir=/var/lib/mysql log_bin=/tmp/mysql/bin-log/mysql-bin.log log_bin=ON socket=/var/lib/mysql/mysql.sock user=mysql # Default to using old password format for compatibility with mysql 3.x # clients (those using the mysqlclient10 compatibility package). old_passwords=1 log_slow_queries=/tmp/127_slow.log long_query_time=1 log_queries_not_using_indexes .......
Après le redémarrage de MySQL, les résultats de la vérification sont les suivants :
mysql> show variables like 'log_slow_queries'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | log_slow_queries | ON | +------------------+-------+ 1 row in set (0.00 sec) mysql> show variables like 'long_query_time'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | long_query_time | 2 | +-----------------+-------+ 1 row in set (0.00 sec) mysql>
Recommandations associées :
mysql enregistre du temps sql_MySQL
Utiliser MySQL pour analyser SQL problèmes chronophages
Sur la façon de gérer les fichiers php chronophages
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!