启用慢速查询 MySQL 日志
这篇文章是从由软件进行自动翻译。你可以看到这篇文章的源代码
fr:Activer les logs de requêtes lentes MySQL
he:לאפשר שאילתות איטי יומני MySQL
ro:Enable lent întrebare MySQL busteni
ru:Включение медленных запросов MySQL журналы
pl:Po wolnych zapytań MySQL logi
ja:低速のクエリ MySQL のログを有効にします。
ar:تمكين الاستعلامات بطيئة سجلات الخلية
zh:启用慢速查询 MySQL 日志
de:Langsame Abfragen MySQL Protokolle aktivieren
nl:Langzame vragen MySQL logboeken inschakelen
it:Attivare slow query log di MySQL
pt:Permitir consultas lentas os logs do MySQL
es:Permitir consultas lentas de MySQL logs
en:Enable slow queries MySQL logs
介绍
可能会收到警报从监测有关缓慢 mysql 查询 (slow queries) : ces erreurs sont produites quand le temps d'exécution d'une requête MySQL dépasse le temps alloué défini par la variable MySQL long_query_time. Ces erreurs pouvant être produites par différents facteurs, nous verrons ici comment activer les logs de ces erreurs afin de les analyser et les corriger.
地方
Veuillez noter qu'activer les logs de slow queries peut ralentir votre 服务器, étant donné que des écritures seront effectuées en même temps que l'exécution des requêtes lentes.
验证日志已经活跃
若要确保的慢速查询日志不已经打开,在 SSH 连接到您的计算机并输入 MySQL 壳 :
mysql -u utilisateur -p
[mot de passe]
一次在 MySQL 壳中,输入以下命令,以获取所有变量及其值的列表 :
show variables;
导航到看到左边的列中的变量 "slow_query_log" : 关于 '我们 ',日志是活动。关于 '关闭 ',我们不得不打开它们。
启用和配置日志慢速查询
总是在 MySQL 壳,输入以下命令 :
set global slow_query_log = 'ON';
你还可以设置路径的目录存储的慢速查询日志 :
set global slow_query_log_file ='/var/log/mysql/slow-query.log';
最后,设置分配给每个请求,请确保您有没有误报的慢速查询的最短时间 : 10 秒是一个正确的值, 20 秒建议如果它发生,你 服务器 面对这些多的查询和游客削弱 (此变量被设置为基本 10 秒) :
set global long_query_time = '20';
最后,验证更改被考虑在内,通过下面的命令 :
show variables like '%slow%';
分析日志
在监测警报,通知您查询写的都是慢,你现在可以分析 slow_queries 的日志以了解这些延误的原因 :
# montrera les requêtes en temps réel
tail -f /var/log/mysql/slow-query.log # défini dans notre exemple ci-dessus
# sortie complète du fichier
cat /var/log/mysql/slow-query.log
# naviguer de haut en bas
less /var/log/mysql/slow-query.log
这一现象的解释
在这种形式开始时解释,慢速查询正如 dedfinie 所定义的查询执行时间 ; 如果查询需要更长的时间限制,long_query_time 设置为可执行,它被定义为慢 querie。获取长时间运行的查询,第一个理由可以是坏的 MySQL 变量设置 "long_query_time" ; 太低的最长时间可以有些沉重的查询将直接放在缓慢而他们其实很正常。
另一个原因可能与有关使用 MySQL 的外部服务 ; 例如,一个网站的情况纳入不自动关闭连接到 MySQL 的坏编程可以填充的缓冲区,使运行时间较长的查询。
糟糕的配置数据库的也可以种现象的原因 : 表和标记的连接 (关键) 可以生成这些错误 - 例如,在没有主键的表。
Enfin, il ne faut pas exclure l'hypothèse d'une attaque sur votre 服务器, générant de nombreuses requêtes qui finiront par s'entasser et donc dépasser la limite de temps d'exécution définie par long_query_time.
结论
日志现在活跃,应允许您更好地分析在您的数据库,使您可以诊断性能问题,编程或有针对性的攻击行动缓慢。此外,您现在有一个更好的视觉上对执行的操作你 服务器 数据库。
这篇文章似乎对你有用 ?
开启评论自动刷新