当前位置: 首页 > news >正文

MySQL数据库慢SQL监听

在MySQL数据库中,自带了慢SQL的监听和记录功能,下面演示下如何如何来查看。当前数据库版本为8.0.42

开启慢SQL记录

show variables like '%query%';

通过执行上面的语句,可以看到当前数据库的情况(默认,没有修改过)

如果查询到的结果是slow_query_log=OFF,表示慢SQL记录功能未开启,手动开启即可,具体操作如下:

#开启慢SQL日志功能
set GLOBAL slow_query_log=on;


#慢SQL执行时间阈值,单位(秒) ,1毫秒=0.001
#不建议超过300ms,最终结果视情况而定
set global long_query_time=0.001;


#指定慢SQL文件名为slow-sql,慢SQL日志保存在mysql/data目录下
set global slow_query_log_file="slow-sql.log";

long_query_time默认值是10秒钟,把它改成0.001,为了方便下面的演示。

同时把slow_query_log_file的文件名称改成因为,中文会乱码。

修改配置后,需要重启navicat,否则不生效。

将慢SQL的定义改成0.001秒(1毫秒)之后,再次查询配置信息:

查看慢SQL记录

在数据库执行一个查询,然后观察慢SQL文件记录的信息。

任意执行一个查询,只要查询时间超过1毫秒即可:

执行完成,找到MySQL安装目录,到到data目录下面的slow-sql.log文件

打开文件,找到最后一次的记录

下面对其中的内容进行分析,对每个参数进行说明:

其中需要重点关注的两个参数是 Time(SQL执行时间),Rows_examined(扫描的行数),这两个值越大,说明SQL执行效率越低,需要进行优化。

MySQL优化技巧,可以参考下面的文章:

https://blog.csdn.net/liangmengbk/article/details/155714304?spm=1001.2014.3001.5501

查看哪些SQL没有使用到索引

除了记录慢SQL能到知道哪些SQL语句执行效率低外,还有一种方式可以达到类似的效果,那就是把没有使用到索引的SQL记录下来。没有使用到索引的SQL也是我们可以进行优化的重点对象。

首先是在MySQL中要开启 未使用索引的语句记录 开关,命令如下:

set global log_queries_not_using_indexes=on;

执行这个命令打开这个开关,如果执行的SQL没有使用到任何索引,则自动会被记录下来(内容也是放在slow-sql.log文件中,和慢SQL放在一个文件的),方便分析。

开启后,也是需要重启navicat,才能生效。

为了验证能准确记录相关信息,先把慢SQL的时间改成10秒,暂时不记录慢SQL,观察slow-sql.log文件的内容。

下面执行一个查询

因为这个查询使用了like关键字,且前后都有%,会导致原有的索引失效,也就是说这个SQL肯定没有用到索引,打开slow-sql.log文件看下记录的内容。

确实被记录下来了,因为当前设置的慢SQL标准是10秒,而该SQL执行仅花费0.0014秒,所以它就是因为没有用到索引而记录的。

同时还发现它的下面有两个SQL也被记录下来了,这两个SQL是MySQL数据库系统表的相关SQL,虽然不是我们人为执行的,但是以为它没有用到索引,所以也被记录下来,可以不用关注。目前还没有办法做到只记录我们自己执行的SQL,而避开MySQL系统的SQL。

http://www.jsqmd.com/news/83337/

相关文章:

  • AI邮件助手完全指南:从入门到精通的高效邮件管理方案
  • X荧光光谱仪怎么选?楚英豪JXF-8000 能量色散X荧光光谱仪 - 品牌推荐大师
  • 【Java毕设源码分享】基于springboot+vue的学校教务管理系统设计与实现(程序+文档+代码讲解+一条龙定制)
  • GPT-2编码器:从数据压缩到语言理解的桥梁设计
  • BJ集训-数学
  • 【光学入门指南】如何高效学习《现代光学基础》
  • 洛谷P10133 题解
  • 2025年口碑好国际博士申请6大专业服务商辅导机构推荐指南:靠谱国际博士报读渠道 - 品牌企业推荐师(官方)
  • 腾讯混元3D部件分割技术深度解析:从原理到实战的完整指南
  • AI 3D生成革命:从文字描述到立体模型的魔法之旅
  • 开题报告不是“学术入场券”,而是“科研项目的启动说明书”|Paperzz AI开题报告功能深度拆解——从选题模糊到框架清晰,它如何把你的“研究冲动”翻译成“可执行的科研计划书”?
  • 2025 年 12 月国内靠谱的实验室装修设计公司权威推荐榜 - 品牌推荐大师
  • Plex动漫元数据终极解决方案:HAMA.bundle完整配置指南
  • SPOD频谱正交分解终极指南:Matlab实战全解析
  • BlockTheSpot技术解析:Windows平台Spotify高级功能解锁方案
  • 从 “开题被打回” 到 “一次过审”:paperzz AI 如何补全开题报告的 3 个隐形逻辑?
  • 利用多目标粒子群算法MOPSO以及多目标免疫算法NNIA求解综合能源系统规划问题
  • 2025年实验室装修设计公司权威推荐榜:3大主流品牌深度解析 - 品牌推荐大师
  • librdkafka终极指南:5步搞定Kafka C客户端部署
  • ISO/IEC 27005:2022完整教程:信息安全风险管理终极指南
  • 一张图看懂风控策略的“内卷”之路:从简单规则到复杂网络
  • Zephyr RTOS音频处理终极指南:I2S与DMA技术深度解析
  • 模型一上线就崩?你可能忽略了这三点
  • 智能预警系统:3步构建工业设备的贝叶斯故障预测模型
  • 开题报告的“八仙过海”:8款AI协作者——一份非工具测评的「学术写作生态图谱」手记(附协作策略矩阵)
  • 基于PI控制的PMSM永磁同步电机控制系统simulink建模与仿真 1.功能介绍
  • 2025年企业起名机构推荐:五大专业机构深度评测与排行解析 - 品牌推荐
  • python —— 偏函数 —— functools.partial 和 functools.partialmethod
  • SeedVR2-7B:0.8秒重塑1080P视频,AI修复效率提升18倍
  • Chrome浏览器Flash插件终极离线安装指南