GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment activer le journal des requêtes lentes pour MySQL

Dans ce didacticiel, nous allons vous montrer comment activer un journal des requêtes lentes pour MySQL sur les systèmes Linux. MySQL a une fonctionnalité intégrée qui vous permet de consigner les requêtes SQL dans un fichier, vous pouvez activer les journaux de requêtes SQL complets dans un fichier ou uniquement le journal des requêtes lentes. Il est facile pour nous de dépanner/déboguer l'instruction SQL si le journal des requêtes SQL est activé, le journal des requêtes lentes est utilisé pour rechercher les requêtes qui prennent beaucoup de temps à s'exécuter et sont donc candidats à l'optimisation. Nous supposons que vous avez déjà installé MySQL sur le système Linux avec des privilèges d'administrateur et nous supposons que vous avez déjà une petite connaissance de MySQL.

Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple et suppose que vous s'exécutent dans le compte root, sinon vous devrez peut-être ajouter 'sudo ‘ aux commandes pour obtenir les privilèges root. Je vais vous montrer étape par étape l'activation du journal des requêtes lentes pour MySQL.

Prérequis

  • Un serveur exécutant l'un des systèmes d'exploitation suivants :CentOS Linux.
  • Il est recommandé d'utiliser une nouvelle installation du système d'exploitation pour éviter tout problème potentiel.
  • Accès SSH au serveur (ou ouvrez simplement Terminal si vous êtes sur un ordinateur de bureau).
  • Un non-root sudo user ou l'accès à l'root user . Nous vous recommandons d'agir en tant qu'non-root sudo user , cependant, car vous pouvez endommager votre système si vous ne faites pas attention lorsque vous agissez en tant que root.

Activer le journal des requêtes lentes pour MySQL

Étape 1. Tout d'abord, commençons par nous assurer que votre système est à jour.

sudo dnf clean all
sudo dnf update

Étape 2. Configurez le serveur MySQL.

Nous modifions maintenant le /etc/my.cnf fichier avec votre éditeur de texte préféré.

nano /etc/my.cnf

Une fois que vous avez votre my.cnf fichier ouvert, ajoutez la ligne suivante sous le "[mysqld] ” section.

[mysqld]
log-slow-queries
log-slow-queries= /var/log/mysql/slow-queries.log
long_query_time=5

Enregistrez et fermez le fichier, puis créez le fichier slow-queries.log. Vous pouvez avoir le fichier à n'importe quel endroit de votre choix, tant que vous définissez le chemin dans votre my.cnf .

touch /var/log/mysql/slow-queries.log
chown mysql.mysql /var/log/mysql/slow-queries.log

Enfin, redémarrez le service MySQL. Saisissez la commande suivante :

sudo systemctl restart mysql

Étape 3. Vérifiez la requête de journal lente.

Une fois configuré avec succès. Vérifiez le "slow_query_log " paramètre (il devrait être "ON") :

mysql> show variables like '%slow%';
+---------------------+--------------------------------+
| Variable_name       | Value                          |
+---------------------+--------------------------------+
| log_slow_queries    | ON                             |
| slow_launch_time    | 2                              |
| slow_query_log      | ON                             |
| slow_query_log_file | /var/lib/mysql/mysqld-slow.log |
+---------------------+--------------------------------+
4 rows in set (0.00 sec)

Ensuite, nous vérifions le paramètre "long_query_time ", le temps devrait être de 5 secondes :

mysql> show variables like '%long%';
+--------------------+----------+
| Variable_name      | Value    |
+--------------------+----------+
| long_query_time    | 5.000000 |
| max_long_data_size | 1048576  |
+--------------------+----------+
2 rows in set (0.00 sec)

Félicitations ! Vous avez activé avec succès un journal des requêtes lentes sur MySQL. Merci d'avoir utilisé ce didacticiel pour activer un journal des requêtes lentes sur MySQL dans le système Linux. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons vous consultez le site Web officiel de MySQL.


Cent OS
  1. Comment arrêter un processus dans MySQL

  2. Comment activer la journalisation des requêtes MySQL/MariaDB

  3. CentOS / RHEL 7 :Comment activer telnet pour un groupe d'utilisateurs

  4. Comment activer la journalisation détaillée pour VSFTPD

  5. Comment changer le répertoire de journal par défaut (/var/log) dans Rsyslog pour CentOS/RHEL 6,7

Comment activer Fail2Ban pour Plesk 12

Comment activer SSL et les connexions à distance pour MySQL sur CentOS 7

Comment activer HTTPS pour Varnish Cache à l'aide de Hitch sur CentOS-RHEL 8

Comment activer le journal des requêtes de Mysql (voir toutes les requêtes SQL au fur et à mesure) ?

Comment se connecter en tant que root dans Mysql ?

Comment activer CloudFlare CDN pour mon site Web ?