mysql索引的作用和优缺点

发布时间: 2023-11-21 11:33 阅读: 文章来源:1MUMB1830PS

所谓“水能载舟,亦能覆舟”,数据库的索引也是一样,盲目的建立索引不仅达不到预期的效果,反而会酿成更大的灾难。能否更好的使用索引,是考验一个DBA是否优秀的重要指标之一。

mysql

使用索引的优点:

1、大大提高数据的检索速度,也是使用索引的主要原因。

2、可以加快表与表之间的连接。

3、保证数据的参照完整性。例如:外键列上创建索引可以有效避免死锁问题,也可以防止更新父表主键时,对子表的表锁。

4、减少磁盘I/O操作的手段之一。

5、唯一性索引可以保证表中每行数据的唯一性。

6、查询中使用优化隐藏器,提高系统性能。

7、减少查询中分组(GROUP BY)和排序(ORDER BY)的时间,提高查询速度。

使用索引的缺点:

1、创建和维护索引需要耗费时间,而且会随着数据量的增加而增加。

2、索引需要占用物理空间,如果建立聚簇索引,需要的空间更大。

那么平时应该怎么选择是否建立索引呢?下面总结出一些基本原则:

1、对数据量大的表建立索引才有意义,通常少于1000条数据没必要建立索引。

2、在WHERE字句或者连接条件经常使用的列上建立索引。

3、索引的层次不要超过4层。

4、做为最大值和最小值函数的参数列,考虑建立索引。

5、索引应该建立在选择性高的字段上,也就是索引选择性。(之前讲过,可翻阅往期文章)

6、复合索引的建立需要正确选择前导列字段。

7、主键、外键列必须建立索引。

8、索引建立在小字段上,对于字段数据类型TEXT等不适合建立索引。

9、经常与其他表进行连接的表,连接字段考虑建立索引。

以上就是本期的总结,希望对你有用~~

下期见~~

•••展开全文