索引是一种数据结构,一种可以提高数据库检索目标数据性能的数据结构。
数据库还维护着满足特定查找算法的数据结构,实现了高级查找算法。
一般来说索引本身也很大,基本上都是以索引文件的形式存储在磁盘上的,唯一索引默认是使用B+树索引。
优点:提高数据的检索效率,降低数据的IO成本,通过索引列对数据进行排序,降低数据排序的成本,降低CPU的消耗。
缺点:索引也是一张表,它记录了主键和索引字段,并指向实体表的记录,索引也是要占用磁盘空间的,索引虽然提高了查询速度,但是他会降低更新表数据的速度,因为它要同时更新索引。
单值索引:即一个索引只包含单个列,一个表可以有多个单列索引;
唯一索引:索引列的值必须唯一,允许有空值;
复合索引:一个索引包含了多个列
CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX 自定义索引名
[USING 索引类型]
ON 表名(列名[,列名...]);
ALTER TABLE 表名 ADD INDEX 索引名(字段[列表])
ALTER TABLE 表名 ADD FULLTEXT 索引名(字段[列表])
SHOW INDEX FROM 表名;
DROP INDEX 索引名 ON 表名;
create index `user` on name_age_email(name,age,email);
相当于
对name创建了索引;
对name,age创建了索引;
对name,age,email创建了索引;
本文地址:https://blog.csdn.net/baidu_32689899/article/details/107280666
如对本文有疑问, 点击进行留言回复!!
服务器Centos部署MySql并连接Navicat过程详解
网友评论