Mysql优化-深度讲解系列目录

前言

笔者相信大多数同学都清楚Mysql的索引(Index)对查找数据的速度提升是有很大帮助的,了解的更深入的一些的同学可能也知道Mysql的索引模型是B+树。但是笔者发现网上对于这些知识非常的琐碎,不利于新入门的同学理解Mysql 索引底层的运作机制。本篇博客就是要从InnoDB开始一步一步的推导到Index的原理,当然这些都是笔者个人的理解和学到的内容,如果有错误的地方,欢迎大家指正,互相进步。

Mysql索引与InnoDB

【Mysql深度讲解InnoDB引擎与Index索引(一)】
主要内容:InnoDB数据加载的原理,InnoDB数据页结构详解,InnoDB行格式Compact详解,InnoDB数据溢出等等内容。

【Mysql深度讲解InnoDB引擎与Index索引(二)】
主要内容:推导InnoDB的索引模型。InnoDB与MyISAM插入数据对比,模拟InnoDB的存储过程,页目录优化查询,页目录的引入,抽象结构B+树结构,真实的InnoDB结构详解。

【Mysql深度讲解InnoDB引擎与Index索引(三)】
主要内容:主键索引(聚集索引),辅助索引(二级索引、联合索引),字符集编码与排序规则,联合索引底层解析,利用索引查找数据, 使用索引的条件,无法适应的索引匹配,排序如何利用索引,索引的代价等等内容。

【Mysql深度讲解InnoDB引擎与Index索引(四)】
主要内容:索引选择性的介绍与计算,前缀索引与索引的空间优化,覆盖索引与回表的概念,索引的匹配范围值执行过程,精确匹配某一列并发未匹配另一列执行过程,排序 order by与分组 group by如何利用索引,ASC & DECS索引的利用,如何修改Mysql默认索引,以及最后建立索引的规则等等内容。

查询优化器

这两篇基本上把Mysql内部查询优化器所做的事情,以及查询优化器的成本计算讲完了,但是特别提醒一点:虽然查询优化器是不准确的,但是要去相信它做的事情。当你的一个sql经过查询优化器计算以后,并没有达到你想要的结果的时候,再去分析是否查询优化器优化的结果偏差过大。一个sql语句到底哪种执行方法是最优的,对于用户来说是要相信Mysql做的计算结果,并依赖这种计算结果去分析比较哪种sql的写法对于当前的业务来说是最优解,而不是说自己去真的计算成本,按照自己的计算结果执行。如果每条sql都要自己计算才放心,那么查询优化器的功能显然就被浪费了,这也不是笔者介绍查询优化器的初衷。

【Mysql深度讲解 - 查询优化器(一)】
主要内容:介绍了Mysql如何开启查询优化器,如何分析查询优化器的日志,以及Mysql对于查询语句是如何进行成本估算的,并且实际做了一个例子演示成本估算。
【Mysql深度讲解 - 查询优化器(二)】
主要内容:介绍了Mysql在计算成本时所使用的统计数据都存在哪里,以及统计数据的更新策略,索引统计数据的计算,NULL值在Mysql中是如何处理的等等内容。

Sql的优化

这部分内容主要讲解了常用的sql语句内部逻辑,以及优化的基本方案和方向。
【Mysql深度讲解 – Join语句】
主要内容:主要讲解了Join的原理,嵌套链接,块嵌套连接是如何做的,以及如何消除外连接进行一个Join的优化。

【Mysql深度讲解 – 子查询优化】
主要内容:Mysql中子查询优化的思路,子查询的执行过程,什么是物化表,半连接等等内容。

【Mysql深度讲解 – 派生表】
主要内容:主要讲解了什么是派生表,派生表的物化,派生表物化策略,派生表的优化,派生表无法被消除的情况,以及临时表、派生表、物化表的区别等等内容。

【Mysql深度讲解 – explain关键字(一)】
主要内容:Explain 关键字解析,包含table字段,id字段,select_type字段,type字段,type字段的性能排序等等内容。

【Mysql深度讲解 – explain关键字(二)】
主要内容:Explain 关键字解析,包含剩余possible_keys、key、key_len、ref、rows、filtered、Extra字段的详细说明,以及Extra字段性能排序等等内容。

Sql的事务以及锁的原理

【Mysqls深度讲解 – 事务】
主要内容:什么是事务,Mysql中事务的用法,隔离性详解,InnoDB中的版本链是什么样的,ReadView在隔离性中是如何应用的,隔离级别READ COMMITTED的实现原理,隔离级别REPEATABLE READ的实现原理。

【Mysqls深度讲解 – 锁】
主要内容:读锁与写锁,Mysql中的读操作与写操作对锁的应用,什么是行锁,行锁在隔离级别中的应用,什么是表锁以及其用途,死锁等等内容。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值