03
2016
11

mysql索引

索引
MySQL常用索引类型
normal:表示普通索引
unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用作索引时,可设置为unique
full text: 表示 全文搜索的索引。 FULLTEXT 用于搜索很长一篇文章的时候,效果最好 FULLTEXT索引只能由CHAR、VARCHAR和TEXT这几种类型的数据列构成(AGAINST )。用在比较短的文本,如果就一两行字的,普通的 INDEX 也可以。
MySQL常用索引方法
hash:Hash 索引仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询。 hash不支持索引排序
BTREE:B-Tree索引可以被用在像=,>,>=,<,<=和BETWEEN这些比较操作符上。而且还可以用于LIKE操作符,只要它的查询条件是一个不以通配符开头的常量。一般比较常用
注意点
1.对于like操作 like '姓名%' 可以使用索引,但是 like '%姓名%'使用不了索引
2.对于组合索引 c1c2(c1,c2) 查询语句select * from t1 where c1=1 and c2=2能够使用该索引。查询语句select * from t1 where c1=1也能够使用该索引。但是,查询语句select * from t1 where c2=2不能够使用该索引,因为没有组合索引的引导列,即,要想使用c2列进行查找,必需出现c1等于某值。
3.为经常需要排序、分组和联合操作的字段建立索引
外键
互联网行业应用不推荐使用外键: 用户量大,并发度高,为此数据库服务器很容易成为性能瓶颈,尤其受IO能力限制,且不能轻易地水平扩展;若是把数据一致性的控制放到事务中,也即让应用服务器承担此部分的压力,而引用服务器一般都是可以做到轻松地水平的伸缩;


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。