Mysql的笔记 - 索引

1.索引类型

 B-Tree :  索引顺序存储,根据索引的根节点搜索,向下层查找。叶子节点指向被索引的数据,树的深度和表的大小有关。顺序存储,很适合范围查找。索引的列顺序可能会影响索引的使用。

哈希索引 : 只有精确匹配索引所有列的查询才有效。而且叶子节点存放的是行指针和哈希值,所以无法使用排序,同时哈希索引也不支持索引列匹配查找。只支持等值比较,不支持范围查找。可能会出现哈希冲突,维护成本会增高。

全文索引:/

2.索引的优点

1.减少服务器扫描的数据量 : 索引可以快速定位到表的指定位置

2.避免不需要的排序和临时表 : 索引是有序的

3.可以将随机I/O变为顺序I/O:索引中存储了实际的列值,某些查询只需要查询索引就可以完成全部查询。

3.高性能索引策略

1.独立的列:不参与计算和作为函数的参数

2.前缀索引和索引选择性 : 过长的字段作为索引时,可以选择合适的长度作为前缀索引,避免全部匹配,提高性能。通常选择选择性高的列作为索引。

3.多列索引:索引合并,联合索引,关注索引顺序等

4.选择合适的索引顺序:不考虑排序和分组时,通常选择选择性高的索引放到最左侧

5.聚簇索引:索引和数据放在一起,查询效率高。

6.索引覆盖:不用回表

7.使用索引扫描做排序:索引本身是有序的,满足最左前缀原则

8.压缩索引:/

9.冗余和重复索引:优化器在选择时会逐个的进行考虑选择索引,会影响性能。

10.未使用的索引:删除

11.索引和锁:让查询锁定更少的行和更快的定位。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值