首页 > 其他 > 详细

索引设计原则

时间:2017-05-26 21:23:03      阅读:281      评论:0      收藏:0      [点我收藏+]

索引设计原则

1.最左前缀原则 index column_name(10) 只对前十个字节做索引


ERROR 1071 (42000): Specified key was too long; max key length is 3072 bytes

mysql> alter table e engine=myisam;

ERROR 1071 (42000): Specified key was too long; max key length is 1000 bytes


所有索引列长度加起来不能>1000 or 3072,引擎不一样,长度限制有差别

innodb:索引列的最大长度(5.7版本是3072bytes,是字节数,不是字符)
myisam:最大索引列长度是1000


2.最少原则(一个索引能支持多个SQL,一张表控制在5个之内)

2.选择性好的列靠前原则

    将:primary,unique notnull 放前边

    对于:运算或者between and 或者 like 等放后边


index(a,b,c)

a:primary key


where a=1 and b like ‘%f%‘ and c=123 后面b 和 c将无法使用索引ref or eq_ref




3.频繁更新列尽量少放到索引里

4.多使用聚集索引和cover index


索引设计原则

原文:http://lovexx.blog.51cto.com/131664/1929810

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!