mysql中的索引到底是什么?
前言
对于数据库而言,常用的操作数据的方式无外乎增、删、改、查而已。而在真正的生产环境中,增加、删除、修改这三项很少有问题会出现。对于一些复杂的查询而言,尤其是数据量过大的情况
前言 对于数据库而言,常用的操作数据的方式无外乎增、删、改、查而已。而在真正的生产环境中,增加、删除、修改这三项很少有问题会出现。对于一些复杂的查询而言,尤其是数据量过大的情况下,查询语句往往会很慢,所以提高查询的速度才是重中之重的。那么,为了提高速度,索引就成了必不可少的了。 概述 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可以提高数据库中特定数据的查询速度。 如果没有索引,mysql必须从第一条记录开始读取整个表格,一直读到需要找的内容为止 如果有了索引,mysql能够快速地到达某个指定的数据,而不必查询所有数据 分类 1、普通索引是mysql中的基本索引类型,允许在定义索引的列中插入重复值和空值 2、唯一索引。被定义为唯一索引的列的值必须唯一,但是允许出现空值。 3、组合索引。它是在表中的多个字段上创建的索引 4、全文索引。在定义全文索引的列上支持全文查找 5、空间索引。对空间数据类型的字段创建的索引(几乎用不上) 设计原则 索引在设计的时候,如果设计的不合理或者确守索引都会对数据库和应用程序造成障碍,因此设计索引时要考虑几个问题: ①、索引并非越多越好,因为索引本身需要占用相应的物理空间 ②、避免对经常进行更新的表进行过多的索引,并且索引中的列尽可能地少,对经常要查询的字段应该添加索引 ③、数据量小的表最好不要添加索引 ④、在不同的值很少的列上不要建立索引,例如性别这个列只有男和女、 ⑤、当唯一性是某个数据本身的特征时mysql索引表,需要制定唯一索引 比如说 电话号 (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |