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

SQL查询优化---如何查询截取分析

慢查询日志

1、慢查询日志是什么

MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。
具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是运行10秒以上的语句。
由他来查看哪些SQL超出了我们的最大忍耐时间值,比如一条sql执行超过5秒钟,我们就算慢SQL,希望能收集超过5秒的sql,结合之前explain进行全面分析。

2、慢查询日志如何使用

(1)慢查询日志说明
默认情况下,MySQL数据库没有开启慢查询日志,需要我们手动来设置这个参数。
当然,如果不是调优需要的话,一般不建议启动该参数,因为开启慢查询日志会或多或少带来一定的性能影响。慢查询日志支持将日志记录写入文件

(2)查看慢查询日志是否开启及如何开启
1、默认:SHOW VARIABLES LIKE '%slow_query_log%';
默认情况下slow_query_log的值为OFF,表示慢查询日志是禁用的,
可以通过设置slow_query_log的值来开启

SHOW VARIABLES LIKE '%slow_query_log%';

在这里插入图片描述

2、开启:set global slow_query_log=1;
使用set global slow_query_log=1;开启了慢查询日志只对当前数据库生效,
如果MySQL重启后则会失效。
在这里插入图片描述
在这里插入图片描述

全局变量设置,对当前连接不影响
在这里插入图片描述

对当前连接立刻生效
在这里插入图片描述

如果要永久生效,就必须修改配置文件my.cnf(其它系统变量也是如此)
修改my.cnf文件,[mysqld]下增加或修改参数
slow_query_log 和slow_query_log_file后,然后重启MySQL服务器。也即将如下两行配置进my.cnf文件

slow_query_log =1
slow_query_log_file=/var/lib/mysql/atguigu-slow.log

关于慢查询的参数slow_query_log_file ,它指定慢查询日志文件的存放路径,系统默认会给一个缺省的文件host_name-slow.log(如果没有指定参数slow_query_log_file的话)
(3)那么开启了慢查询日志后,什么样的SQL才会记录到慢查询日志里面呢?
这个是由参数long_query_time控制,默认情况下long_query_time的值为10秒,
命令:SHOW VARIABLES LIKE 'long_query_time%';
在这里插入图片描述

可以使用命令修改,也可以在my.cnf参数里面修改。

假如运行时间正好等于long_query_time的情况,并不会被记录下来。也就是说,
在mysql源码里是判断大于long_query_time,而非大于等于。

(4)使用方法
1、查看当前多少秒算慢

SHOW VARIABLES LIKE 'long_query_time%';

2、设置慢的阙值时间

set  long_query_time=1

使用命令

set  long_query_time=1

修改为阙值到1秒钟的就是慢sql

3、记录慢SQL并后续分析

实验一条慢sql
在这里插入图片描述

跟踪日志信息
在这里插入图片描述

4、查询当前系统中有多少条慢查询记录

show global status like '%Slow_queries%';

在这里插入图片描述

5、配置版

my.cnf
【mysqld】下配置:

slow_query_log=1
slow_query_log_file=/var/lib/mysql/atguigu-slow.log
long_query_time=3
log_output=FILE

3、日志分析工具mysqldumpslow

在生产环境中,如果要手工分析日志,查找、分析SQL,显然是个体力活,MySQL提供了日志分析工具mysqldumpslow。

1、 查看mysqldumpslow的帮助信息
mysqldumpslow --help
在这里插入图片描述

1-a: 不将数字抽象成N,字符串抽象成S2-s: 是表示按照何种方式排序;
(3)c: 访问次数
(4)l: 锁定时间
(5)r: 返回记录
(6)t: 查询时间
(7)al:平均锁定时间
(8)ar:平均返回记录数
(9)at:平均查询时间
(10-t:即为返回前面多少条的数据;
(11-g:后边搭配一个正则匹配模式,大小写不敏感的;

2、工作常用参考

得到返回记录集最多的10个SQL

mysqldumpslow -s r -t 10 /var/lib/mysql/atguigu-slow.log

得到访问次数最多的10个SQL

mysqldumpslow -s c -t 10 /var/lib/mysql/atguigu-slow.log

得到按照时间排序的前10条里面含有左连接的查询语句

mysqldumpslow -s t -t 10 -g "left join" /var/lib/mysql/atguigu-slow.log

另外建议在使用这些命令时结合 | 和more 使用 ,否则有可能出现爆屏情况

mysqldumpslow -s r -t 10 /var/lib/mysql/atguigu-slow.log | more

4、SHOW PROCESSLIST
能干什么:查询所有用户正在干什么
如果出现不顺眼的

kill [id]

相关文章:

SQL查询优化---如何查询截取分析

慢查询日志 1、慢查询日志是什么 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。 具体指运行时间超过long_query_time值的…...

vue3基础流程

目录 1. 安装和创建项目 2. 项目结构 3. 主要文件解析 3.1 main.js 3.2 App.vue 4. 组件和Props 5. 事件处理 6. 生命周期钩子 7. Vue 3的Composition API 8. 总结和结论 响应式系统: 组件化: 易于学习: 灵活性: 社…...

Vue 数据绑定 和 数据渲染

目录 一、Vue快速入门 1.简介 : 2.MVVM : 3.准备工作 : 二、数据绑定 1.实例 : 2.验证 : 三、数据渲染 1.单向渲染 : 2.双向渲染 : 一、Vue快速入门 1.简介 : (1) Vue[/vju/],是Vue.js的简称,是一个前端框架,常用于构建前端用户…...

【原创】解决Kotlin无法使用@Slf4j注解的问题

前言 主要还是辟谣之前的网上的用法,当然也会给出最终的使用方法。这可是Kotlin,关Slf4j何事!? 辟谣内容:创建注解来解决这个问题 例如: Target(AnnotationTarget.CLASS) Retention(AnnotationRetentio…...

CDN是如何实现全球节点同步的

当谈到内容交付网络(Content Delivery Network,CDN)加速时,我们必须了解CDN是如何实现全球节点同步的。CDN是一种网络架构,通过将内容分发到全球各地的服务器节点,以降低用户访问网站或应用程序时的延迟和提…...

Centos7 Linux系统下生成https的crt和key证书

linux下生成https的crt和key证书 步骤如下: x509证书一般会用到三类文,key,csr,crt Key 是私用密钥openssl格,通常是rsa算法。 Csr 是证书请求文件,用于申请证书。在制作csr文件的时,必须使…...

性能测试工具——Jmeter的安装【超详细】

目录 1、性能测试工具:JMeter和LoadRunner对比 2、为什么学习JMeter? 3、JMeter环境搭建 3.1、安装JDK 3.2、下载安装JMeter 3.3、配置环境变量 2.4、启动验证JMeter是否安装成功 4、认识JMeter的目录结构 1)bin目录:存放…...

系列三十、Spring AOP vs AspectJ AOP

一、关系 &#xff08;1&#xff09;当在Spring中要使用Aspect、Before、After等注解时&#xff0c;需要添加AspectJ的相关依赖&#xff0c;如下 <dependency><groupId>cglib</groupId><artifactId>cglib</artifactId><version>3.1</…...

面向对象设计模式——策略模式

策略设计模式&#xff08;Strategy Pattern&#xff09;是一种行为型设计模式&#xff0c;它允许在运行时选择算法的行为。该模式定义了一系列算法&#xff0c;将每个算法封装到一个独立的类中&#xff0c;使它们可以相互替换。策略模式使算法独立于客户端而变化&#xff0c;客…...

Kubernetes - Ingress HTTP 负载搭建部署解决方案(新版本v1.21+)

在看这一篇之前&#xff0c;如果不了解 Ingress 在 K8s 当中的职责&#xff0c;建议看之前的一篇针对旧版本 Ingress 的部署搭建&#xff0c;在开头会提到它的一些简介Kubernetes - Ingress HTTP 负载搭建部署解决方案_放羊的牧码的博客-CSDN博客 开始表演 1、kubeasz 一键安装…...

刚刚:腾讯云3年轻量2核2G4M服务器优惠价格366元三年

腾讯云3年轻量2核2G4M服务器&#xff0c;2023双十一优惠价格366元三年&#xff0c;自带4M公网带宽&#xff0c;下载速度可达512KB/秒&#xff0c;300GB月流量&#xff0c;50GB SSD盘系统盘&#xff0c;腾讯云百科txybk.com分享腾讯云轻量2核2G4M服务器性能、优惠活动、购买条件…...

`include指令【FPGA】

案例&#xff1a; 在Verilog中&#xff0c;include指令可以将一个文件的内容插入到当前文件中。 这个指令通常用于将一些常用的代码片段或者模块定义放在单独的文件中&#xff0c; 然后在需要使用的地方通过include指令将其插入到当前文件中。 这样可以提高代码的复用性和可维…...

iphone备份后怎么转到新手机,iphone备份在哪里查看

iphone备份会备份哪些东西&#xff1f;iphone可根据需要备份设备数据、应用数据、苹果系统等。根据不同的备份数据&#xff0c;可备份的数据类型不同&#xff0c;有些工具可整机备份&#xff0c;有些工具可单项数据备份。本文会详细讲解苹果手机备份可以备份哪些东西。 一、ip…...

JAVA毕业设计106—基于Java+Springboot的外卖系统(源码+数据库)

基于JavaSpringboot的外卖系统(源码数据库)106 一、系统介绍 本系统分为用户端和管理端角色 前台用户功能&#xff1a; 登录、菜品浏览&#xff0c;口味选择&#xff0c;加入购物车&#xff0c;地址管理&#xff0c;提交订单。 管理后台&#xff1a; 登录&#xff0c;员工管…...

SpringCore完整学习教程4,入门级别

本章从第4章开始 4. Logging Spring Boot使用Commons Logging进行所有内部日志记录&#xff0c;但保留底层日志实现开放。为Java Util Logging、Log4J2和Logback提供了默认配置。在每种情况下&#xff0c;记录器都预先配置为使用控制台输出和可选的文件输出。 默认情况下&…...

如何能在项目具体编码实现之前能尽可能早的发现问题并解决问题

在项目的具体编码实现之前尽可能早地发现并解决问题&#xff0c;可以大大节省时间和资源&#xff0c;提高项目的成功率。以下是一些策略和方法&#xff1a; 1. 明确需求和预期&#xff1a; 确保所有的项目需求都是清晰和明确的。需求模糊不清是项目失败的常见原因之一。与利益…...

Windows server服务器允许多用户远程的设置

在Windows Server上允许多用户同时进行远程桌面连接&#xff0c;您需要配置远程桌面服务以支持多用户并确保许可证和授权允许多用户连接。以下是在Windows Server上允许多用户远程桌面连接的步骤&#xff1a; 注意&#xff1a;这些步骤适用于 Windows Server 2012、Windows Ser…...

Vmware下的虚拟机NAT连接后仍然木有网络

问题描述 出现在主机能ping通&#xff0c;互联网ping不通的情况。 废话 假设已经设置了网络配置文件IPADDR。 那么&#xff0c;NAT后可以访问互联网的前提是&#xff1a;这个IPADDR的网段在Vmware软件设置的网段内。 解决 在Vmware虚拟网络设置选项卡中&#xff0c;进NAT配…...

2.Vue — 模板语法、数据绑定、el与data的写法、数据代理

文章目录 一、模板语法1.1 插值语法1.2指令语法 二、数据绑定语法2.1 单向数据绑定2.2 双向数据绑定 三、el与data的两种写法3.1 el3.2 data 四、数据代理4.1 Object.defineProperty4.2 Vue数据代理4.2.1 展示数据代理4.2.2 Vue数据代理 一、模板语法 root容器里面的代码被称为…...

管理类联考——数学——汇总篇——知识点突破——数据分析——记忆

文章目录 考点记忆/考点汇总——按大纲 整体目录大纲法记忆宫殿法绘图记忆法 局部数字编码法对号不对号 归类记忆法重点记忆法歌决记忆法口诀&#xff1a;加法分类&#xff0c;类类相加&#xff1b;乘法分步&#xff0c;步步相乘。 谐音记忆法涂色 理解记忆法比较记忆法转图像记…...

AI时代程序员必看!揭秘Harness Engineerin

当AI智能体开始批量编写代码&#xff0c;程序员会失业吗&#xff1f;OpenAI的一个实验给出了惊人答案&#xff1a;在一次实验中&#xff0c;3名工程师配合1500个AI智能体&#xff0c;竟在5个月内完成了100万行代码的产品开发——人类一行代码都没写&#xff01;但背后真正的秘密…...

Kazumi插件扩展完全指南:从安装到高级配置

Kazumi插件扩展完全指南&#xff1a;从安装到高级配置 【免费下载链接】Kazumi 基于自定义规则的番剧采集APP&#xff0c;支持流媒体在线观看&#xff0c;支持弹幕&#xff0c;支持实时超分辨率。 项目地址: https://gitcode.com/gh_mirrors/ka/Kazumi Kazumi作为一款基…...

如何通过arknights-ui实现明日方舟界面定制?解锁个性化游戏体验新方式

如何通过arknights-ui实现明日方舟界面定制&#xff1f;解锁个性化游戏体验新方式 【免费下载链接】arknights-ui H5 复刻版明日方舟游戏主界面 项目地址: https://gitcode.com/gh_mirrors/ar/arknights-ui arknights-ui是一个基于H5CSS技术的开源项目&#xff0c;它提供…...

【RAG】【vector_stores002】Google AlloyDB for PostgreSQL 向量存储完整案例

本案例演示如何使用 LlamaIndex 与 Google AlloyDB for PostgreSQL 集成&#xff0c;实现向量存储和检索功能&#xff0c;用于构建基于文档的问答系统。1. 案例目标本案例的主要目标是&#xff1a;设置 AlloyDB 向量存储&#xff1a;配置 LlamaIndex 以使用 Google AlloyDB for…...

航拍遥感飞机数据集 Yolo格式标注另附上3840*2160超高分辨率原图下小目标检测效果示意图更多见主页

航拍遥感飞机数据集 Yolo格式标注 另附上3840*2160超高分辨率原图下小目标检测效果示意图 更多见主页...

seo 优化计划包括哪些内容

SEO优化计划&#xff1a;打造高效网站流量的全面指南 在当前数字化时代&#xff0c;一个成功的网站离不开高效的搜索引擎优化&#xff08;SEO&#xff09;策略。SEO优化计划是一项复杂而多层次的工作&#xff0c;其目的是提升网站在搜索引擎结果中的排名&#xff0c;从而吸引更…...

OpenClaw 对接微信机器人配置全教程:从 0 到 1 搭建个人 AI 助手

一、前言 本文基于 OpenClaw v2.6.0 Windows 一键部署包&#xff0c;详细拆解微信渠道的完整配置流程&#xff0c;全程可视化操作&#xff0c;新手也能跟着一步步完成。 二、前置准备 下载安装包&#xff1a;下载 OpenClaw Windows 一键部署包 注意一一定下载2.60版本&#x…...

**光计算驱动下的编程新范式:用Python探索光子芯片加速的AI推理**在传统电子计算面临物理极限

光计算驱动下的编程新范式&#xff1a;用Python探索光子芯片加速的AI推理 在传统电子计算面临物理极限的今天&#xff0c;**光计算&#xff08;Photonic Computing&#xff09;**正从实验室走向产业化落地。它利用光子替代电子进行信息传输和处理&#xff0c;具备超低功耗、超…...

如何在复杂逻辑谜题中寻找确定性答案:MiniSat 求解器的极简哲学

如何在复杂逻辑谜题中寻找确定性答案&#xff1a;MiniSat 求解器的极简哲学 【免费下载链接】minisat A minimalistic and high-performance SAT solver 项目地址: https://gitcode.com/gh_mirrors/mi/minisat 当你面对一个由数千个变量和约束条件构成的复杂逻辑系统时&…...

零成本构建开源串流服务器:跨设备体验全攻略

零成本构建开源串流服务器&#xff1a;跨设备体验全攻略 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 在多设备互联的时代&#xff0c;如何打破硬件限制&#xff0c;让高性能游戏…...