Maison > Article > base de données > 4 outils de réglage MySQL utiles recommandés
Cet article recommande 4 outils d'optimisation MySQL. Vous pouvez les utiliser pour effectuer un examen physique de votre MySQL et générer un rapport awr, vous permettant de saisir les performances globales de votre base de données.
Recommandation vidéo : Tutoriel vidéo MySQL
Quelles sont les performances de l'exécution de MySQL ? Les paramètres sont-ils définis correctement ? Est-il clair s'il existe des risques de sécurité dans les paramètres du compte ?
Comme le dit le proverbe, si vous voulez bien faire votre travail, vous devez d'abord affûter vos outils. Un examen physique régulier de votre base de données MYSQL est un moyen important pour garantir le fonctionnement sûr de la base de données.
Aujourd'hui, j'aimerais partager avec vous plusieurs outils d'optimisation mysql Vous pouvez les utiliser pour effectuer un examen physique de votre mysql et générer un rapport awr, vous permettant d'appréhender les performances globales de votre base de données.
Il s'agit d'un outil de diagnostic des performances de base de données couramment utilisé pour MySQL, qui vérifie principalement la rationalité de paramètres de configuration. Comprend les fichiers journaux, les moteurs de stockage, les recommandations de sécurité et l’analyse des performances. C'est une bonne aide pour l'optimisation de MySQL pour fournir des suggestions d'amélioration en fonction des problèmes potentiels.
Dans la version précédente, MySQLTuner prenait en charge environ 300 métriques pour MySQL/MariaDB/Percona Server.
Adresse du projet : https://github.com/major/MySQ...
1.1 Téléchargement
[root@localhost ~]#wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl
1.2 Utilisation
[root@localhost ~]# ./mysqltuner.pl --socket /var/lib/mysql/mysql.sock >> MySQLTuner 1.7.4 - Major Hayden <major> >> Bug reports, feature requests, and downloads at http://mysqltuner.com/ >> Run with '--help' for additional options and output filtering\[--\] Skipped version check for MySQLTuner scriptPlease enter your MySQL administrative login: rootPlease enter your MySQL administrative password: \[OK\] Currently running supported MySQL version 5.7.23\[OK\] Operating on 64-bit architecture</major>
1.3. Analyse du rapport
1) Attention importante [!!] (éléments avec points d'exclamation entre crochets) tel que [!!] Maximum possible utilisation de la mémoire : 4,8G (244,13% de la RAM installée), indiquant que la mémoire a été sérieusement dépassée.
2) Faites attention aux dernières suggestions "Recommandations".
Il s'agit d'un autre outil d'optimisation pour MySQL, conçu pour l'ensemble du physique de MySQL. suggestions d’examen et d’optimisation pour les problèmes potentiels.
Adresse du projet : https://github.com/BMDan/tuni...
Actuellement, le contenu qui prend en charge les suggestions de détection et d'optimisation est le suivant :
2.1 Téléchargement
[root@localhost ~]#wget https://launchpad.net/mysql-tuning-primer/trunk/1.6-r1/+download/tuning-primer.sh
2.2 Utilisation
[root@localhost ~]# [root@localhost dba]# ./tuning-primer.sh -- MYSQL PERFORMANCE TUNING PRIMER -- - By: Matthew Montgomery -
2.3 Analyse du rapport
Concentrez-vous sur les options avec des alertes rouges et apportez des modifications en fonction des suggestions en fonction de la situation réelle de votre propre système, par exemple :
pt-variable-advisor peut analyser les variables MySQL et faire des suggestions sur d'éventuels problèmes.
3.1 Installation
https://www.percona.com/downl...
[root@localhost ~]#wget https://www.percona.com/downloads/percona-toolkit/3.0.13/binary/redhat/7/x86\_64/percona-toolkit-3.0.13-re85ce15-el7-x86\_64-bundle.tar\[root@localhost ~\]#yum install percona-toolkit-3.0.13-1.el7.x86_64.rpm
3.2 Utilisation
pt-variable-advisor est un sous-outil de l'ensemble d'outils pt, principalement utilisé pour diagnostiquer si vos paramètres sont raisonnables.
[root@localhost ~]# pt-variable-advisor localhost --socket /var/lib/mysql/mysql.sock
3.3 Analyse du rapport
Concentrez-vous sur les entrées contenant des informations WARN, telles que :
La fonction principale de pt-query-digest est d'analyser les requêtes MySQL à partir des journaux, des listes de processus et de tcpdump.
4.1 Installation
Pour plus de détails, veuillez vous référer à la section 3.1
4.2 Utilisation
pt- query-digest Principal Utilisé pour analyser les journaux lents de MySQL Par rapport à l'outil mysqldumpshow, les résultats d'analyse de l'outil py-query_digest sont plus spécifiques et complets.
[root@localhost ~]# pt-query-digest /var/lib/mysql/slowtest-slow.log
4.3 Analyse des usages courants
1) Analyser directement les fichiers de requêtes lents :
pt-query-digest /var/lib/mysql/slowtest-slow.log > slow_report.log
2) Analyser les requêtes au cours des 12 dernières heures :
pt-query-digest --since=12h /var/lib/mysql/slowtest-slow.log > slow_report2.log
3) Analyser les requêtes dans la plage de temps spécifiée :
pt-query-digest /var/lib/mysql/slowtest-slow.log --since '2017-01-07 09:30:00' --until '2017-01-07 10:00:00'> > slow_report3.log
4) Analyser les requêtes lentes contenant des instructions de sélection
pt-query-digest --filter '$event->{fingerprint} =~ m/^select/i' /var/lib/mysql/slowtest-slow.log> slow_report4.log
5) Requêtes lentes pour un certain utilisateur
pt-query-digest --filter '($event->{user} || "") =~ m/^root/i' /var/lib/mysql/slowtest-slow.log> slow_report5.log
6) Interroger toutes les requêtes lentes d'analyse complète de table ou de jointure complète
pt-query-digest --filter '(($event->{Full\_scan} || "") eq "yes") ||(($event->{Full\_join} || "") eq "yes")' /var/lib/mysql/slowtest-slow.log> slow_report6.log
4.4 Analyse du rapport
Partie 1 : Résultats statistiques globaux
Global : combien de requêtes y a-t-il au total ? Période : la période d'exécution de la requête unique : le nombre de requêtes uniques, c'est-à-dire, après avoir paramétré les conditions de la requête, combien de requêtes différentes y a-t-il au total ? : Minimum max : Maximum moy : moyenne 95% : ranger toutes les valeurs de petite à grande, le nombre situé dans le 95ème percentile, ce nombre a généralement la valeur la plus référence médiane : médiane, ranger toutes les valeurs de petite à grande , le numéro situé au milieu
Partie 2 : Résultats statistiques du groupe de requête
Classement : classement de toutes les instructions, classées par ordre décroissant par heure de requête par défaut, spécifiez l'ID de requête via --order-by : ID de l'instruction, (supprimez les espaces et les caractères de texte en excès, calculez la valeur de hachage) Réponse : total temps de réponse time : La proportion de temps total de cette requête dans cette analyse appelle : Le nombre d'exécutions, c'est-à-dire le nombre total d'instructions de requête de ce type dans cette analyse R/Call : Le temps de réponse moyen de chaque exécution V/M : Temps de réponse Rapport variance/moyenne Élément : Objet de requête
Partie 3 : Résultats statistiques détaillés de chaque requête
ID : Numéro d'identification de la requête, correspondant à l'ID de la requête dans la figure ci-dessus : Nom de la base de données Utilisateurs : le nombre d'exécutions par chaque utilisateur (proportion) Query_time distribution : distribution du temps de requête, la longueur reflète la proportion de l'intervalle. Tables : tables impliquées dans la requête. Expliquer : instruction SQL.
La vie est merveilleuse, à demain~
Pour plus de connaissances liées à la programmation, veuillez visiter : Introduction à la programmation ! !
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!