Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment activer le journal des requêtes lentes MySQL ?

Version 5.1.6 et supérieure :

1. Entrez dans le shell MySQL et exécutez la commande suivante :

set global slow_query_log = 'ON';

2. Activez toutes les autres options souhaitées. Voici quelques exemples courants :

Détails du journal pour les requêtes censées récupérer toutes les lignes au lieu d'utiliser un index :

   set global log_queries_not_using_indexes = 'ON'

Définissez le chemin d'accès au journal des requêtes lentes :

  set global slow_query_log_file ='/var/log/mysql/slow-query.log';

Définissez la durée d'exécution d'une requête avant d'être enregistrée :

   set global long_query_time = 20;
     (default is 10 seconds)

3. Confirmez que les modifications sont actives en entrant dans le shell MySQL et en exécutant la commande suivante :

show variables like '%slow%';

Versions inférieures à 5.1.6 :

  1. Modifiez le fichier /etc/my.cnf avec votre éditeur de texte préférévi /etc/my.cnf

  2. Ajoutez la ligne suivante sous la section "[mysqld]". N'hésitez pas à mettre à jour le chemin d'accès au fichier journal comme vous le souhaitez :

    log-slow-queries=/var/log/mysql/slow-query.log

3. Activez des options supplémentaires si nécessaire. Voici les mêmes exemples couramment utilisés ci-dessus :

Définissez la durée d'exécution d'une requête avant d'être enregistrée :

  `long_query_time=20
  (default is 10 seconds)`

Détails du journal pour les requêtes censées récupérer toutes les lignes au lieu d'utiliser un index :

 `log-queries-not-using-indexes`

4. Redémarrez le service MySQL :

service mysqld restart

5. Confirmez que la modification est active en entrant dans le shell MySQL et en exécutant ce qui suit :

show variables like '%slow%';

Mise à jour : 1

Selon la documentation MySQL, l'erreur #1193 se produit lorsque vous utilisez un mauvais code pour SQLSTATE.

Message: Unknown system variable %s

Et, comme vous pouvez le voir sur la même page, le SQLSTATE 99003 n'est pas défini.

référez-vous à ce lien :

http://dev.mysql.com/doc /refman/5.5/en/slow-query-log.html

http://dev.mysql.com/doc /refman/5.1/en/slow-query-log.html