创建索引原则

    http://blog.csdn.net/zljjava/article/details/41985933


1.为经常出现关键字order by、group by、distinct后面的字段,建立索引。

在这些字段上建立索引,可以有效的避免排序操作,如果建立的时复合索引,索引的字段顺序要和这些关键字后面的字段顺序一致,否则索引不会被使用。

2.在union等集合操作的结果集字段上建立索引,可以有效的避免排序操作,如果建立的时复合索引,索引的字段顺序要和这些关键字后面的字段顺序一致,否则索引不会被使用。

3.为经常用作查询选择的字段建立索引

4.在经常用作表连接的属性上建立索引

5.考虑使用索引覆盖,对数据很少被更新的表,如果客户经常至查询其中的几个字段,可以考虑在这几个字段上建立索引,从而将表的扫描改变为索引的扫描。


注意以下限制:

1.限制表上的索引数目。

对一个存在大量更新操作的表,所建索引的数目一般不超过3个,最多不超过5个,索引虽说提高了访问速度,但太多索引会影响数据的更新操作。

2.不要在有大量相同取值的字段上建立索引。

在这样的字段(例如性别)上建立索引,字段作为选择条件时将返回大量满足条件的记录,优化器不会使用该索引作为访问路径。

3.避免在取值朝一个方向上增长的字段(如日期类型的字段)上建立索引,对于复合索引,避免将这些类型的字段放置在最前面。

由于字段取值总是朝一个方向增长,新纪录总是存放在索引的最后一个叶页中,从而不断的引起该叶页的访问竞争、新叶页的分配、中间分支页的拆分。此外,如果所建索引时聚集索引,表中的数据按照索引的排列顺序存放,所有的插入记录都集中在最后一个数据页上进行,从而引起插入热点。

4.对复合索引,按照字段在查询条件中出现的频度建立索引。

5.删除不再使用,或者很少使用的索引



  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值