注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

成功源于细节

梦想、奋斗、收获

 
 
 

日志

 
 
 
 

表索引的一些要点  

2013-06-01 09:10:34|  分类: mysql |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
  1、表的主键、外键必须有索引;

  2、数据量超过300的表应该有索引;

  3、经常与其他表进行连接的表,在连接字段上应该建立索引;

  4、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;

  5、索引应该建在选择性高的字段上;

  6、索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;

  7、复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替:

          A、正确选择复合索引中的主列字段,一般是选择性较好的字段;
          B、复合索引的几个字段是否经常同时以AND方式出现在Where子句中?单字段查询是否极少甚至没有?如果是,则可以建立复合索引;否则考虑单字段索引;
         C、如果复合索引中包含的字段经常单独出现在Where子句中,则分解为多个单字段索引;
         D、如果复合索引所包含的字段超过3个,那么仔细考虑其必要性,考虑减少复合的字段;
         E、如果既有单字段索引,又有这几个字段上的复合索引,一般可以删除复合索引;

  8、频繁进行数据操作的表,不要建立太多的索引;

  9、删除无用的索引,避免对执行计划造成负面影响;

  以上是一些普遍的建立索引时的判断依据。一言以蔽之,索引的建立必须慎重,对每个索引的必要性都应该经过仔细分析,要有建立的依据。因为太多的索引与不充分、不正确的索引对性能都毫无益处:在表上建立的每个索引都会增加存储开销,索引对于插入、删除、更新操作也会增加处理上的开销。另外,过多的复合索引,在有单字段索引的情况下,一般都是没有存在价值的;相反,还会降低数据增加删除时的性能,特别是对频繁更新的表来说,负面影响更大。

  评论这张
 
阅读(700)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017