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

Comment activer le journal des requêtes lentes dans MySQL

Cet article explique comment activer le journal des requêtes lentes MySQL. Vous pouvez utiliser le journal des requêtes lentes pour vous aider à déterminer quelles requêtes de base de données prennent beaucoup de temps à s'exécuter.

Cet article s'applique uniquement aux produits répertoriés dans les Détails de l'article barre latérale. Vous devez disposer d'un accès root au serveur pour suivre ces procédures. Si vous avez un VPS géré ou un serveur dédié géré (et que vous n'avez pas d'accès root) et que vous souhaitez activer le journal des requêtes lentes, veuillez ouvrir un ticket sur le portail client à l'adresse https://my.a2hosting.com.

Activation du journal des requêtes lentes

Les requêtes lentes peuvent affecter les performances de la base de données et les performances globales du serveur. La fonctionnalité de journalisation des requêtes lentes de MySQL vous permet de consigner les requêtes qui dépassent une limite de temps prédéfinie. Cela simplifie grandement la recherche de requêtes inefficaces ou chronophages.

Pour activer le journal des requêtes lentes dans MySQL, procédez comme suit :

  1. Connectez-vous à votre serveur à l'aide de SSH.
  2. Sur la ligne de commande, saisissez la commande suivante :
    mysql -u root -p
  3. Tapez le mot de passe root MySQL.
  4. Pour activer le journal des requêtes lentes, tapez la commande suivante à l'invite mysql> :

    SET GLOBAL slow_query_log = 'ON';
  5. Vous pouvez définir des options supplémentaires pour le journal des requêtes lentes :

    • Par défaut, lorsque le journal des requêtes lentes est activé, il consigne toute requête dont l'exécution prend plus de 10 secondes. Pour modifier cet intervalle, tapez la commande suivante en remplaçant X avec le temps en secondes :
      SET GLOBAL long_query_time = X;
    • Par défaut, le fichier journal des requêtes lentes se trouve dans /var/lib/mysql/hostname-slow.log . Pour modifier le chemin d'accès au journal ou le nom de fichier, saisissez la commande suivante en remplaçant chemin avec le chemin d'accès au fichier, et filename avec le nom du nom du fichier journal :

      SET GLOBAL slow_query_log_file = '/path/filename';
  6. Pour vérifier que le journal des requêtes lentes fonctionne correctement, déconnectez-vous de mysql programme, puis reconnectez-vous. (Cela recharge les variables de session pour le mysql programme.) Tapez la commande suivante, en remplaçant X avec une valeur supérieure à long_query_time paramètre:

    SELECT SLEEP(X);

    Le fichier journal des requêtes lentes doit contenir des informations sur la requête.

  7. Continuez à surveiller le fichier journal des requêtes lentes pour voir quelles requêtes prennent beaucoup de temps à s'exécuter.
  8. Une fois le dépannage terminé, désactivez le journal des requêtes lentes. Pour ce faire, exécutez le mysql programmez à nouveau, puis tapez la commande suivante :

    SET GLOBAL slow_query_log = 'OFF';
    Vous ne devez activer le journal des requêtes lentes qu'aussi longtemps que nécessaire pour résoudre les problèmes de performances.

Plus d'informations

Pour plus d'informations sur le journal des requêtes lentes MySQL, veuillez visiter https://dev.mysql.com/doc/refman/5.5/en/slow-query-log.html.