阅读目录 一 介绍 二 索引的原理 三 索引的数据结构 四 聚集索引与辅助索引 五 MySQL索引管理 六 测试索引 七 正确使用索引 八 联合索引与覆盖索引 九 查询优化神器-explain 十 慢查询优化的基本步骤 十一 慢日志管理 一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左 ...
分类:
数据库 时间:
2017-12-03 16:24:15
阅读次数:
271
change buffer是一种特殊的数据结构,当要修改的辅助索引页不在buffer pool中时,用来cache对辅助索引页的修改。对辅助索引页的操作可能是insert、update和delete操作。等到相关的索引页被读入buffer pool中后,才会使用change buffer中的内容对辅 ...
分类:
数据库 时间:
2017-10-04 14:29:13
阅读次数:
249
因为我们大多数情况下使用的都是Innodb,所以这篇博客主要依据Innodb来讲 b+树(图片来自网络) b+树图来自网络 1.聚集索引与非聚集索引区别 聚集索引:叶子节点包含完整的数据(物理地址连续),叫做聚集索引 非聚集索引(又称辅助索引):它的叶子节点并不包含行记录的全部数据,叶子结点除了包含 ...
分类:
数据库 时间:
2017-09-30 17:54:05
阅读次数:
150
1、InnoDB引擎索引 InnoDB支持的索引有以下几种: (1)哈希索引 (2)全文索引 (1)B+树索引 又可以分为聚集索引与辅助索引 索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或ALTER TABLE来给表增加索引。删除索引可以利用ALTER T ...
分类:
数据库 时间:
2017-09-09 22:28:06
阅读次数:
258
几种索引: 1)排序文件上的简单索引 2)非排序文件上的辅助索引 3)B树 4)散列表 主索引 1)稠密索引:每个主键都有 2)稀疏索引:每个数据块存放一个键 3)多级索引:索引上的索引 4)重复查找键的索引: 比较简单的解决方法是在稠密索引上的每种键值都建立一个索引 数据修改期间的索引维护 1)创 ...
分类:
数据库 时间:
2017-09-05 23:00:17
阅读次数:
210
索引:是一种按照特定存储格式存储的特殊数据,用于SQL查询
索引的类型:
聚集索引和非聚集索引:数据是否和索引存储在一起
主键索引和辅助索引:索引是否在主键之上
左前缀索引和覆盖索引:是否只截取左边的前几个字节最为索引,mysql默认使用左前缀索引
左前缀索引的存储:..
分类:
数据库 时间:
2017-06-10 15:33:28
阅读次数:
230
MySQL非聚簇索引&&二级索引&&辅助索引 mysql中每个表都有一个聚簇索引(clustered index ),除此之外的表上的每个非聚簇索引都是二级索引,又叫辅助索引(secondary indexes)。 以InnoDB来说,每个InnoDB表具有一个特殊的索引称为聚集索引。如果您的表上定 ...
分类:
数据库 时间:
2017-04-08 18:18:56
阅读次数:
276
MongoDB面向文档的数据库,不是关系型数据库NOsql 灵活,高效,易于扩展,功能完备的数据库 MongoDB的独特的工具: 1.索引 MongoDB支持辅助索引,也提供唯一的复合的地理空间索引能力 2.储存JavaScript 3.聚合:支持MapReduce 4.固定集合:集合的大小有上限 ...
分类:
数据库 时间:
2017-04-02 00:01:00
阅读次数:
273
Index Nested-Loop Join (接上篇)由于访问的是辅助索引,如果查询需要访问聚集索引上的列,那么必要需要进行回表取数据,看似每条记录只是多了一次回表操作,但这才是INLJ算法最大的弊端。首先,辅助索引的index lookup是比较随机I/O访问操作。其次,根据index look ...
分类:
数据库 时间:
2017-02-20 13:25:18
阅读次数:
311
优化顺序:
选择适当的引擎和表结构和数据类型建立索引,优化sql。增加缓存,redis、memcache。主从、主主,读写分离。mysql自带分区表根据业务耦合垂直拆分,分布式数据库水平拆分,选择合理的sharding key。
引擎区别与选择:
Innodb采用聚簇索引,聚簇索引包含data。辅助索引(复合索引、前缀索引、唯一索引)存储的是主索引的值,所以查找时...
分类:
数据库 时间:
2016-05-27 11:17:35
阅读次数:
204