mysql-影响MySQL索引的因素

一.MySQL索引
索引是为了加速对表中数据行的检索而创建的一种分散存储的数据结构。
MySQL5.5之前的版本,默认的存储引擎是MyISAM,5.5以后默认的存储引擎是InnoDB。存储引擎是由第三方公司提供的一个插拔式的插件(是每个公司都要实现的一套标准)的方式来使用的。存储引擎都是定义到表结构上面的,可以在一个库里面定义多种存储引擎,每个表可以使用不同的存储引擎。索引机制就是由这些插拔式的存储引擎来实现的。
MySQL调优是一个系统工程,包括很多方面,而索引是非常重要非常基础的一个环节。正确的创建合适的索引是提升数据库查询性能的基础。
二.使用索引的好处:
1.关系型数据库的索引一般都是硬盘级的索引,比如,一个十几个字段的表,2000万数据的表,他的索引占用内存就可以达到1-2G,所以把所有的索引放到内存中是很不现实的,而使用索引能极大的减少存储引擎需要扫描的数据量;
2.索引可以把随机IO变成顺序IO;
3.索引可以帮助我们在进行分组、排序等操作时,避免使用临时表。
三。MySQL数据存储的顺序:
数据库表行中数据的物理顺序与键值的逻辑(索引) 顺序相同,可以认为InnoDB是以聚集索引来组织数据的存储的。在叶子节点中存储了所有的数据信息。
MySQL里面除了主键索引,其他的都是非聚集索引。
四。辅助索引
辅助索引在叶子节点保存了主键索引的值,如果用辅助索引查找,他会一直查找到主键索引的值,然后再基于主键索引去查找叶子节点的所有数据。这样设计的目的是,InnoDB认为主键是最常用的查询条件&#

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值