mysql sql语句优化 sql和python的区别讲解

SQL执行计划分析执行计划分析在sql调优中起着重要的作用。通过Explain+我们的自定义SQL,我们可以得到这条SQL的执行计划,如下:让我们分析一下实施计划中的一些重要列:id列它是select的序列号,有几个select就有几个id,id的顺序按照select出现的顺序递增。列id越大,执行优先...

SQL执行计划分析

执行计划分析在sql调优中起着重要的作用。通过Explain+我们的自定义SQL,我们可以得到这条SQL的执行计划,如下:

让我们分析一下实施计划中的一些重要列:

id列

它是select的序列号,有几个select就有几个id,id的顺序按照select出现的顺序递增。

列id越大,执行优先级越高。如果id相同,则从上到下执行。如果id为空,则最后执行。

表列

也就是select对应的表。

类型列

这一列表示SQL的优化程度,从最好到最差:system >:const >eq _ ref & gtref & gt范围& gtindex & gt全部.一般来说,需要确保查询达到范围级别,最好是ref级别。

键列

实际索引。

行列

Mysql在内部估计结果或扫描的数量。

额外列

该列显示一些附加信息。重要信息如下:

1)Usingindex:表示使用了覆盖索引(覆盖索引是指只查询索引树上的字段,减少了回表操作,从而提高了速度);

2)Usingwhere:使用where语句处理结果,查询的列不被索引覆盖;

3)using index exception:查询的列没有被索引完全覆盖,where条件是前导列的范围;

4) 4)Usingtemporary:mysql需要创建一个临时表来处理查询。出现这种情况,一般需要优化,首先是用索引来优化;

5)Usingfilesort:使用普通字段排序,而不是索引排序。数据少的时候,从内存中排序;否则,在磁盘上排序。在这种情况下,通常需要考虑使用索引进行优化。

如何在MYSQL中执行SQL

为了理解这个问题,首先我们必须弄清楚MYSQL的内部结构,如下所示:

SQL的执行过程如下:

作为MYSQL服务器,我们作为客户端的程序通过TCP与MYSQL保持长时间的连接。

使用MYSQL的SQL作为关键字在缓存中查询(MYSQL的缓存使用LRU消除算法实现缓存的消除机制),判断缓存是否命中。

如果是,直接返回数据;如果没有,继续下面的过程。

MYSQL实现了一套解析器(用C语言写的),通过它我们可以判断我们的SQL语法的正确性。

语***确后,我们将通过内部优化器优化我们的SQL,包括成本费用计算等。(这也是为什么我们理论上认为某条SQL会索引,但是执行计划显示没有),最后生成我们SQL的执行计划。

当然,我们也可以使用FORCE _ INDEX(…。)强行索引。

优化后会进入MYSQL内部的executor,然后通过executor调用我们表对应的存储引擎,比如Innodb、MyISAM、Memory等等。

执行引擎会根据优化器的分析结果,即通过最优索引,在相应的索引树上找到相应的数据,同时维护索引树。

本文来自北蕭投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/476402.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 03-26
下一篇 03-26

相关推荐

  • 优美语句摘抄大全

    摘抄的优美语句 1春天的雨是柔和的,只见春雨在竹枝竹叶上跳动着那雨时而直线滑落,时而随风飘洒,留下如烟如雾如纱如丝的倩影,飞溅的雨花仿佛是琴铉上跳动的音符,奏出优美的旋律 2秋天的阳光,覆盖了春季的“温暖”;优美的句子摘抄 在日常学习工作和生活中,许多人都接触

    2023-07-27 00:47:01
    159 0
  • updateset多条数据 使用update语句修改表中数据

    摘要今天就简单介绍一下select语句的流程,update语句的执行过程以及涉及到的两阶段提交协议,仅供参考。Redlog(唯一重做日志(innodb引擎,它循环写入,空之间的间隔总会用完。比如配置一组4个文件,每个文件大小为4GB,可以记录总共4GB的操作)是物理日志,记录“某个数据页发

    2023-07-26 16:30:01
    235 0
  • sqlserver数据库还原语句 sql数据库备份和恢复步骤

    1。了解数据库备份和事务日志备份数据库备份和日志备份是数据库维护的日常工作。备份的目的是将数据库和事务日志文件还原到最近的时间点,以便在数据库出现故障或损坏时将损失降至最低。2。数据库备份[手动数据库备份]A.鼠标右键选择要备份的数据库-任务-备份。描述:完整完整

    2023-07-23 23:44:01
    541 0
  • 高级讽刺人虚伪的句子 讽刺人的经典语句,霸气毒辣

    第一,你有无数个备胎,感情不断,不是因为你有魅力,而是因为你便宜又百搭。第二,毕竟这不是一个***爱的社会。你最好克制一下。第三,脸是人体最神奇的部分。对有些人来说,可大可小,可厚可薄,甚至可有可无。第四,每个人出生时都是原始的。可悲的是,很多人逐渐成为了海

    2023-07-19 21:56:01
    1044 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信