加入收藏 | 设为首页 | 会员中心 | 我要投稿 佛山站长网 (https://www.0757zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

高性能的MySQL(5)索引策略 - MySQL教程

发布时间:2014-06-24 08:29:45 所属栏目:MySql教程 来源:站长网
导读:一、索引的优点 1、索引可以大大减少服务器需要扫描的数据量 2、索引可以帮助服务器避免排序和临时表。 3、索引可以将随即I/O变为顺序I/O 二、索引策略 1、独立
一、索引的优点

1、索引可以大大减少服务器需要扫描的数据量

2、索引可以帮助服务器避免排序和临时表。

3、索引可以将随即I/O变为顺序I/O

二、索引策略

1、独立的列

独立的列是指索引列不能是表达式的一部分,也不能是函数参数。例如:

一个有500W条记录的表,id是主键。

所以要始终将索引列单独放在比较符号的一侧。

2、前缀索引和索引选择性

对于比较大的列,通常可以索引开始的部分字符,这样可以节约索引空间,提高索引率。但是也会降低索引的选择性。

索引的选择性是指,不重复的索引值(基数)和表的记录总数的比值,索引的选择性越高查询效率就越高,因为可以在查找时过滤掉更多的行,唯一索引的选择性是1,性能是最好的。

如何来选择一个合适的长度,让前缀的基数接近完整列的基数,一般我们有2中方法:

a、为了决定前缀的合适长度,需要找到最常见的值的列表,然后和最常见的前缀列表进行比较。

举例:有一张100W记录的表,要对name添加前缀索引

(编辑:佛山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读