- MySQL中常见的索引
- 普通索引:NORMAL
- 主键索引:PRIMARY
- 唯一索引:UNIQUE
- 全文索引:FULLTEXT
- 普通索引 (Normal Index):最基本的索引类型,没有任何限制。
- 唯一索引 (Unique Index):确保索引列中的值唯一,可以用于加速查询,同时保证数据完整性。
- 主键索引 (Primary Key Index):一种特殊的唯一索引,主键索引的值必须唯一且不为空。主键索引可以用来快速定位表中的每一行数据。
- 全文索引 (Full-Text Index):用于全文搜索的特殊索引类型,支持对文本数据进行高效的全文搜索。
- 组合索引 (Composite Index):将多个列组合起来创建的索引,可以用于加速多列的查询。(有时候也被称为:复合索引,联合索引)
- 空间索引 (Spatial Index):针对空间数据类型 (如点、线、多边形等) 创建的索引,用于加速空间数据的查询。
- 前缀索引 (Prefix Index):只索引列值的一部分,可以减少索引占用的空间,但可能会降低查询性能。
- 哈希索引 (Hash Index):基于哈希表实现的索引,适用于等值查询,但不支持范围查询。
- 隐藏列索引 (Invisible Index):在索引列上创建的不可见索引,可以在不删除索引的情况下测试查询性能。
- 自适应哈希索引 (Adaptive Hash Index):MySQL 的 InnoDB 存储引擎中使用的索引类型,用于加速热点数据的访问。
- 虚拟列索引 (Virtual Column Index):基于虚拟列创建的索引,虚拟列是通过表达式计算得到的值。
- 覆盖索引 (Covering Index):包含了查询所需的所有列的索引,可以减少查询时需要访问数据行的次数,从而提高查询性能。