Niveau de journal MySQL

Niveau de journal MySQL
«La journalisation fait référence à la fonctionnalité de l'enregistrement des enregistrements des événements et des opérations dans une application. La journalisation est l'un des formulaires de débogage les plus fondamentaux car il permet à l'application de sauvegarder un rapport détaillant chaque instruction et processus effectués à un stade spécifique. Cela peut, à son tour, aider les développeurs à revenir en arrière, à quel point l'erreur se produit et plus."

Ce tutoriel explorera comment nous pouvons activer et configurer divers niveaux de journalisation dans le serveur MySQL. Cela détermine quoi et comment les messages de journal sont créés au sein du serveur.

Journalisation mysql

Selon le serveur MySQL installé et la configuration, MySQL créera un fichier journal des événements du serveur.

Il existe cinq types de fichiers journaux pris en charge dans le serveur MySQL. Ceux-ci inclus:

  1. Journal d'erreur - Ce fichier journal contient les journaux des erreurs rencontrées lors du démarrage, de l'exécution ou de l'arrêt du serveur MySQL.
  2. Journal ISAM - Cela fait partie des services publics administratifs au niveau du journal. Ce journal contient toutes les modifications apportées aux tables ISAM.
  3. Journal de requête - Comme son nom l'indique, ce fichier journal contient les enregistrements des connexions utilisateur et des requêtes exécutées.
  4. Journal binaire - Tient le journal des instructions qui modifient le serveur. L'utilitaire MySQLDBinlog gère cette journalisation.
  5. Bûche lente - Contient les journaux des requêtes qui dépassent la valeur du paramètre long_query_time.

NOTE: Gardez à l'esprit que certains des journaux discutés ci-dessus sont utilisés dans les opérations internes MySQL. En tant qu'utilisateur régulier, divers fournisseurs MySQL peuvent résumer divers journaux.

Nous n'aurons qu'à connaître le journal d'erreur, les journaux généraux / requêtes et les journaux lents pour ce tutoriel.

Mysql activer la journalisation

Avant de configurer divers niveaux de journalisation dans MySQL, nous devons nous assurer que la fonction de journalisation est activée dans le serveur MySQL.

Avant tout, localisez et modifiez le fichier de configuration MySQL.

Gardez à l'esprit que l'emplacement du fichier de configuration MySQL peut varier en fonction de la configuration du système, de la méthode d'installation, du système d'exploitation, etc.

$ sudo nano / etc / mysql / mon.CNF

Dans le fichier journal, ajoutez les entrées comme indiqué:

[mysqld]
log_error = / var / log / mysql / error.enregistrer
général_log_file = / var / log / mysql / mysql.enregistrer
General_log = 1
log_slow_queries = / var / log / mysql / mysql-slow.enregistrer
long_query_time = 10

La configuration ci-dessus permet les journaux d'erreur, les journaux généraux et les journaux lents. De plus, vous pouvez modifier l'emplacement des fichiers journaux en spécifiant le chemin cible dans la configuration ci-dessus.

Enregistrez les modifications et continuez à redémarrer le serveur.

Dans Windows, vous pouvez activer la journalisation MySQL en modifiant mon.Fichier INI avec les options suivantes.

Général-log = 1
General_log_file = "Mysql.enregistrer"
log-quoty-log = 1
Slow_Query_Log_File = "MySQL-SLOW.enregistrer"
long_query_time = 10
log-error = "mysql.se tromper"

De même, vous pouvez modifier le chemin d'accès et les noms de fichiers des fichiers journaux à votre goût. Par défaut, MySQL stockera les fichiers de journaux dans le répertoire de données (Windows uniquement).

Niveaux de journalisation mysql

MySQL prend en charge jusqu'à huit niveaux de journalisation. Chaque niveau détermine les détails inclus dans les fichiers journaux et le type de messages.

Par défaut, le shell MySQL fonctionnera au niveau de journalisation 5. Cela comprend une erreur, des avertissements et des messages d'information.

Voici les niveaux de journalisation pris en charge et ce que chacun implique.

Niveau de journal (numérique) Niveau de journal Opération Niveau de verbosité
1 Aucun Journalisation désactivée 0
2 Interne Erreur interne 1
3 Erreur Erreur 1
4 Avertissement Avertissement 1
5 Info Informationnel 1
6 Déboguer Déboguer 2
7 Débogage2 Débogage2 3
8 Débogue3 Débogue3 4

Lors du démarrage du shell MySQL, vous pouvez configurer le niveau de verbosité en utilisant le paramètre -verbose.

  1. Niveau de verbosité 0 - Aucun message n'est affiché.
  2. Niveau 1 - Erreur interne, erreur, avertissement et messages d'information.
  3. Niveau 2 - Comprend tous les messages de niveau 1 et les messages de débogage.
  4. Niveau 3 - Ajoute des messages Debug2 au niveau et au niveau 2.
  5. Niveau 4 - Ajoute des messages Debug3. Ceux-ci incluent des messages de journal très détaillés.

Spécification du niveau de journal MySQL dans le shell

Pour spécifier le niveau de journal que vous souhaitez utiliser, nous pouvons utiliser la commande mysqlsh comme indiqué:

MySQLSH --LOG-LEVEL = 6

Vous pouvez spécifier le niveau de journal en tant que valeur numérique ou sa représentation de chaîne comme:

MySQLSH --LOG-LEVEL = DEBUG

NOTE: Dans Windows, la commande MySQLSH est située dans «C: \ Program Files \ MySQL \ MySQL Shell 8.0 \ bin ”.

Pour afficher le niveau de journal actuel, ouvrez votre shell MySQL:

$ mysqlsh

Une fois dans le shell, exécutez la commande:

Mysql js> \ option -l

Cela devrait répertorier les options de shell MySQL, y compris le niveau de journal actuel:

Fermeture

Et c'est tout; Vous avez découvert avec succès comment travailler avec les options de journalisation MySQL. Gardez à l'esprit que les options de journal MySQL sont étendues au-delà de la portée de ce tutoriel. Vous pouvez vérifier les documents pour plus.