• MySQL进阶之存储引擎和索引


     

    查看表的引擎:

     默认是

     

    INNODB存储引擎:

     

    可以通过在对应路径上cmd的终端上输入相当应的命令,看到这张表中的信息。

     

     

     

    索引:

     索引分类:

    后面主要分享B+Tree索引和哈希索引。

     B+Tree索引对应的数据结构:

     

     B+Tree特点:所有结点都在叶子结点,上面的结点只是起到引导的作用,并没有存储数据。

     

    进一步优化:

     哈希索引:

     

     思考题:

     索引的分类:

     

     

    名字是按照字母来排序的 

     

    找到Arm对应的10,再到上面找10对应的位置 ,中间有个叫回表查询的步骤

    索引的语句:

    案例:注意四种索引的写法

    索引的性能分析:

     慢查询:慢查询的语句要进行优化

     可以通过这个操作来查询慢查询是否打开。

     

     要先用这个命令行查看是否当前数据库支持have_profiing操作

     

     为0表示当前是没有支持profiling这个操作

    再设置为1,表示打开 

     上面两个操作开启后,就可以很方便的查看到刚刚执行的全部命令行的查询时间啦。用show profiles命令。

     

    更详细的信息:要用到explain或desc(只需加在命令行前面即可,现实中用explain会比较多)

     多表查询时的explain

     重点关注type,看出SQL语句的性能指标,关注possible_key,key

    在命令行最后加上\G,表中信息可以切换为每行,方便查看

     

    尽量使用>=这样的符号而不是>.

     注意不要用该索引和强制用该索引的区别

    覆盖索引相比较于联合索引有时候可以减少回表查询这个步骤。

  • 相关阅读:
    系列二、类装载器ClassLoader
    【spark】join异常分析(逻辑问题)
    MySQL语法
    51单片机学习:LED点阵实验(显示图像)
    Greenplum数据库故障排查及修复
    关于并行开发的一些概念整理【并发编程系列_1】
    html中使用JQ自定义锚点偏移量
    图像数据通道格式:NCHW和NHWC的区别
    ppt学习总结--一般人需要掌握的内容
    Golang学习之路4-函数/导入包/命令行参数/defer等
  • 原文地址:https://blog.csdn.net/m0_63932570/article/details/125584973