InnoDB和MyISAM索引底层实现原理分析

作者:禅与计算机程序设计艺术

1.简介

InnoDB是MySQL默认存储引擎之一。它是事务性的、支持外键约束的、聚集索引组织的数据表,支持诸如行级锁定等高级功能。InnoDB采用的是聚集索引结构,每张表都存在一个主索引,通过主索引访问数据;其次,InnoDB支持辅助索引以提升查询性能,索引数据按主键顺序存放。

MyISAM是另一种被广泛使用的存储引擎,它支持全文搜索、压缩、空间函数等高级特性。但是,在最新版本的MySQL中,已经逐步淘汰了对MyISAM的支持,而只保留了对InnoDB的支持。

本文将从InnoDB和MyISAM索引底层实现原理角度出发,深入理解它们之间的一些不同点和相似点,并介绍InnoDB索引结构的一些优缺点,包括聚集索引、辅助索引、覆盖索引、索引维护、回表查询、索引失效、死锁以及解决方案。我们还会深入分析InnoDB和MyISAM索引之间关系,并将相关概念进行进一步阐述。最后,作者会介绍索引选择性统计信息的收集方法,以及基于索引的查询优化的方法论。这些知识将帮助读者更好的理解索引的工作原理和应用。

文章的内容主要包括以下7章:

  1. InnoDB和MyISAM索引的概念与区别
  2. InnoDB索引结构及原理
  3. MyISAM索引结构及原理
  4. InnoDB索引的聚集索引和辅助索引
  5. InnoDB索引数据结构和算法
  6. MySQL如何维护索引
  7. 索引选择性统计信息的收集方法
  8. 使用索引的查询优化方法论
  9. 其它一些注意事项

2.基本概念术语说明

2.1 InnoDB索引相关术语和定义

1) InnoDB索引:Inn

猜你喜欢

转载自blog.csdn.net/universsky2015/article/details/132913975
今日推荐