mysql索引创建和使用「为什么能提高查询速度」
文章作者:seo优化大师 文章来源:港翔seo优化 浏览量:本文导读:1 InnoDB两种索引介绍B+树索引:B+树在数据库中的实现,高度大约2~3层,最多2-3次I/O即可查询到数据行聚集索引:按照主键构造的一棵B+树叶子节点存放表的行记录,叶子节点也称数据页非叶子节点存放键值以及指向数据页的偏移量辅助索引
1 InnoDB两种索引介绍
B+树索引:B+树在数据库中的实现,高度大约2~3层,最多2-3次I/O即可查询到数据行
聚集索引:按照主键构造的一棵B+树
叶子节点存放表的行记录,叶子节点也称数据页
非叶子节点存放键值以及指向数据页的偏移量
辅助索引:
叶子节点包含键值以及对应行数据的主键每张表可以存在多个非聚集索引哈希索引:InnoDB存储引擎使用自适应哈斯索引,采用散列表的数据结构,加速查询
key:索引键值,value:索引记录页面位置
系统自动生成,无法手动干预
注:B+树索引的使用场景:取值范围广、高选择性的字段
2 创建/删除索引
ALTER TABLE
ALTER TABLE 表名 ADD [UNIQUE|FULLTEXT|SPATIAL] INDEX 索引名 (字段名 (长度)[ASC|DESC])
ALTER TABLE 表名 DROP INDEX index_name
CREATE/DROP INDEX
CREATE UNIQUE INDEX indexName ON mytable(username(length))
#drop索引
ALTER TABLE testalter_tbl DROP INDEX c;
#drop主键
ALTER TABLE testalter_tbl DROP PRIMARY KEY;
版权保护: 本文由 seo优化大师 转载于网络,版权归原作者所有,如有侵权请联系 seo优化大师 删除
转载请保留链接:[mysql索引创建和使用「为什么能提高查询速度」] http://www.qqsn.com.cn/seo/723.html