索引常见问题

news2024/10/5 16:32:33

被问到SQL和索引优化问题,如何切入?

可以用 explain 进行分析

思考流程:找到哪些运行时间长浪费性能的sql,然后再用explain分析

慢查询日志

MySQL可以设置慢查询日志,当SQL执行的时间超过我们设定的时间,那么这些SQL就会被记录在慢查询日志当中,然后我们通过查看日志,用explain分析这些SQL的执行计划,来判定为什么效率低下,总体步骤如下:
1 设置慢查询日志;

2 压测执行各种业务;

3 查看慢查询日志,找出所有耗时日志;

4 用explain分析第三步查出的耗时sql;

5 举例子说明;

实例演示

慢查询日志相关参数如下图:
slow_query_log

在这里插入图片描述

可以看到慢查询日志存放在 /var/lib/mysql/ubuntu-slow.log

设置开启慢查询日志

在这里插入图片描述

设置慢查询起始时间为100ms即0.1s

set long_query_time=0.1;

打开另一个和mysql的会话,可以看到前面 long_query_time 修改只针对当前会话,而慢查询日志开关是全局的。

在这里插入图片描述

此时我们进行一次耗时的查询操作,都大于0.1s

在这里插入图片描述

然后切换超级用户查看 /var/lib/mysql/ubuntu-slow.log文件

在这里插入图片描述

可以看到就是我们前面查询的三条记录

接下来便可以explain分析sql执行计划

杂项:查看sql执行的精确时间

有时候查询显示0.00sec 我们希望获取更高精度的显示,我们可以做如下操作:

在这里插入图片描述

做查询,并查看详细时间信息show profiles:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/648965.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在UE中使用SVT(VirtualTexture)功能

前几年VT技术非常的火,这项技术主要运用在地形上,可以达到更高级别的精细度和更多次数的纹理混合,但实际非地形也可以用,特别是对于贴图尺寸比较大且多维度子材质比较多的模型,做了材质合并以及VT优化后,可…

二、线性神经网络

文章目录 前言一、线性回归1. 线性回归的基本元素1.1 线性模型1.2 损失函数1.3 解析解1.4 梯度下降1.5 用模型进行预测 2. 正态分布与平方损失3. 从线性回归到深度网络 二、线性回归的代码实现1. 生成数据集2. 读取数据集2.1 手动实现读取数据集2.2 简洁实现读取数据集 3. 初始…

便携补光LED化妆镜方案

近段时间,现代科技的衍生产品,智能化妆镜很受爱美女士的喜爱。为此,宇凡微推出无极调光的LED化妆镜方案。主控芯片采用宇凡微YF单片机,根据LED化妆镜方案的不同功能,支持定制开发。 一、LED化妆镜方案介绍 在日常过程中…

Html span标签的详细介绍

HTML <span>标签_span标签_allway2的博客-CSDN博客 一、span标签的定义及用法 在html中,span标签是使用来组合文档中的行内元素,以便使用样式来对它们进行格式化。 span标签本身并没有什么格式表现(比如:换…

利用Matlab和cadence实现离散傅里叶分析(DFT)

例1: 采样定律,取100个点,信号频率是100HZ,采样频率是1000HZ,相当于采样十个周期,每个周期采样十个点。 cos(2πT)函数是以Ts1/fs为时间间隔对样本进行采样,取N个采样样…

Mini热风枪 制作过程

首先引个流吧 立创开源广场:https://oshwhub.com/abby_qi/mini-re-feng-qiang 哔哩哔哩: 实物图 然后说一下硬件的选型和图 风扇:3010无刷风扇 额定电压3.7V(其实这个风扇还有其他额定电压的,比如9V12V,…

PyTorch 深度学习 || 专题九:PyTorch 全连接自编码网络的无监督学习

PyTorch 全连接自编码网络的无监督学习 文章目录 PyTorch 全连接自编码网络的无监督学习1. 数据去噪1.1 计算库和数据准备工作1.2 构建自编码网络1.3 调用主函数1.4 可视化 2. 数据的重建与降维2.1 计算模块和数据的准备2.2 自编码网络数据准备2.3 自编码网络的构建2.4 自编码网…

1.5 掌握Scala内建控制结构(一)

一、条件表达式 (一)语法格式 if (条件) 值1 else 值2 (二)执行情况 条件为真,结果是值1;条件为假,结果是值2。如果if和else的返回结果同为某种类型,那么条件表达式结果也是那种…

微信小程序开发20__第三方UI组件 ColorUI 的应用

ColorUI 有鲜艳的高饱和色彩, 是专注视觉的微信小程序组件库。 gitee 网址 :ColorUI: 鲜亮的高饱和色彩,专注视觉的小程序组件库 一 使用方法 在微信小程序中使用 ColorUI 需要两个步骤: 第一步: 下载源码解压…

【Linux】详解环境变量与命名行参数

目录 环境变量了解PATH什么是环境变量?使用环境变量系统自带环境变量示例 命名行参数argc与argvenvenviron 环境变量 了解PATH 提出问题: 我写的可执行程序,与系统的可执行程序都是可执行程序,那么为什么执行系统的可执行程序…

Dokcer安装---Mqtt

1、拉取镜像 docker pull registry.cn-hangzhou.aliyuncs.com/synbop/emqttd:2.3.6 老版本 2、运行 docker run -it --name emq -p 18083:18083 -p 1883:1883 -p 8084:8084 -p 8883:8883 -p 8083:8083 -d registry.cn-hangzhou.aliyuncs.com/synbop/emqttd:2.3.6 –name 容器…

佩戴舒适度极好的蓝牙耳机推荐,久戴不累的蓝牙耳机分享

​听歌、刷剧、游戏,运动、吃饭、睡觉等,要说现在年轻人除了离不开手机之外,还有就是蓝牙耳机了!当然,随着蓝牙耳机的快速发展,各种各样的蓝牙耳机都有,导致很多人不知道耳机怎么选了&#xff0…

管理类联考——逻辑——知识篇——第五章 假言命题(必考)(最重要的基础)

第五章 假言命题(必考)(最重要的基础) 假言命题:陈述某一事物情况是另一件事物情况的条件的命题。假言命题中的充分条件假言命题和必要条件假言命题是联考逻辑最重要的必考考点。1 *本质为:充分必要&#…

Vue中如何进行分布式鉴权与认证

Vue中如何进行分布式鉴权与认证 随着前后端分离的趋势不断加强,前端应用的安全性问题也日益受到关注。在Vue应用中,我们通常需要实现分布式鉴权和认证,以确保用户的安全性和数据的保密性。本文将介绍在Vue中如何进行分布式鉴权与认证。 什么…

闲聊下最近哦

随便聊聊 聊聊最近工作或日常上一家公司一直比较忙,人也比较懒,一直没有写博客,最近换了下工作,争取坚持写博客吧 聊聊最近工作或日常 上一家公司一直比较忙,人也比较懒,一直没有写博客,最近换了下工作,争取坚持写博客吧 上家公司做了几年多了,上半年离职换了个工作,现阶段这…

《六》TypeScript 中的泛型

泛型:宽泛的类型,其实就是类型的参数化,让类型像参数一样,不预先指定,而是在使用的时候再让别人传入进来。 在定义函数、类或者接口时,如果遇到类型不明确的时候,就可以使用泛型。 平常开发中可…

Qt5.15.10+msvc2019_x86+qwebengine(含mp4)源码编译

系统要求: win10 64bit 英文版(或者把“区域”->“管理”->“非Unicode程序中所使用的当前语言”->改为"英语(美国)") 内存16g够用,cpu性能越高越好,硬盘在安装环境、下载源码后,至少还有100g可用空间 下载源码: https://download.qt.io/archiv…

Hive SQL:DDL建库 建表

Hive SQL:DDL建库 / 建表 🐘Hive SQL数据库 建库 数据库 在Hive中,默认的数据库叫做default,存储数据位置位于HDFS:/user/hive/warehouse 用户自己创建的数据库存储位 :/user/hive/warehouse/database_name.db 创…

linux文件的增量备份 Shell命令脚本

简单的增量备份脚本,自己用到了之后把部分择出来记录一下,方便日后查阅 # 昨天对应的月份 n_mon$(date -d -1day %Y%m) # 组合文件夹路径 path/home/admin/"$n_mon" # 昨天的0点作为增量备份起始时间,今日0点作为截止时间 s_date$…

web3带大家简单建立区块链概念

上文 Web3.0概念我们简单说了说 web3的概念 可能很多人还是会感觉 太概念了 然后 这一篇 我们再了解一下区块链 因为 web3.0的一个构建基础 就是 区块链 有了区块链 才衍生出了后面的很多东西 去中心化的身份 去中心化的应用 dapp 其实最终的目的 也是带着大家去构建起自己的 …