课程名称
全能软件测试工程师
课程章节
MySQL高级查询
课程讲师
大周
课程内容
MySQL索引与存储引擎高频考点
MySQL索引
- 索引是什么?
索引是一个排序的列表,在这个列表中存储着索引的值包含这个值的数据所在行当物理地址
- 索引有什么用?
当数据量大十分庞大时,可大大加快查询速度
-
过度使用索引引发的问题是什么?
每次表中数据有更新时,都需要维护这个目录(索引)进行同步更新,由于操作步骤多了,所以会降低表中数据更新的速度
-
索引的分类
- 数据结构:B+tree、hash、full-text
- 物理存储: 聚集索引 非聚集索引
- 字段特性:主键索引、唯一索引(用的最多)、普通索引、全文索引、空间索引(InnonDB不支持)
- 字段个数分类:单列索引、联合索引(复合索引、多列索引)
- 如何创建索引?
- 创建唯一索引
create unique index 索引名称 on 表名称(字段名称)
- 创建普通索引
create index 索引名称 on 表名称(字段1,字段2……)
存储引擎
不同的存储引擎其数据存储格式不同和所支持的功能不同(事务的支持、空间索引)
常见的存储引擎:
- InnoDB:支持事务
- MyISAM:不支持事务;大量数据存储时,写入和查询速度均高于InnoDB
- CSV
- Memory
- Merge
课程收获
通过老师的讲解,初步理解了索引和存储引擎的概念,同时对常见的索引分类和主流存储引擎之间的区别有了清楚的认知。