add by zhj:原文链接已经失效了,网上看到的都是转载,向作者Benwin致敬摘要:第一部分:基础知识第二部分:MYISAM和INNODB索引结构1、简单介绍B-tree B+ tree树2、MyisAM索引结构3、Annode索引结构4、MyisAM索引与InnoDB索引相比较第三部分:MY...
分类:
数据库 时间:
2014-10-16 19:58:23
阅读次数:
367
目录摘要数据结构及算法基础 索引的本质 B-Tree和B+Tree 为什么实用B-Tree(B+Tree)MySQL索引实现 MyISAM索引实现 InnoDB索引实现索引使用策略及优化 示例数据库 最左前缀原理与相关优化 索引选择性与前缀索引 InnoDB的主键选择与插入优化后记参考文献摘要本文以...
分类:
数据库 时间:
2014-10-16 19:36:23
阅读次数:
377
show index from tblname查询后各列的描述· Table表的名称。· Non_unique如果MySQL索引不能包括重复词,则为0。如果可以,则为1。· Key_name索引的名称。· Seq_in_index索引中的列序列号,从1开始。· Column_name列名称。· Co...
分类:
其他好文 时间:
2014-10-16 13:39:52
阅读次数:
128
1. 搜索的索引列,不一定是所要选择的列。换句话说,最适合索引的列是出现在WHERE 子句中的列,或连接子句中指定的列,而不是出现在SELECT 关键字后的选择列表中的列。
2. 使用惟一索引。考虑某列中值的分布。对于惟一值的列,索引的效果最好,而具有多个重复值的列,其索引效果最差。例如,存放年龄的列具有不同值,很容易区分各行。而用来记录性别的列,只含有“ M”和“F”,则对此列...
分类:
数据库 时间:
2014-10-09 02:22:48
阅读次数:
165
1.索引作用在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率。特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍。例如,有3个未索引的表t1、t2、t3,分别只包含列c1、c2、c3,每个表分别含有1000行数据组成,指为1~...
分类:
数据库 时间:
2014-10-03 16:10:24
阅读次数:
302
MySQLInnoDB 默认BTREE索引MyISAM引擎默认BTREE索引,支持FULLTEXT索引,仅限与CHAR、VARCHAR、TEXT列MEMORY引擎默认HASH索引,支持BTREE索引
分类:
数据库 时间:
2014-09-29 01:17:46
阅读次数:
375
1、WHERE字句的查询条件里有不等于号(WHERE column!=...),MYSQL将无法使用索引2、类似地,如果WHERE字句的查询条件里使用了函数(如:WHERE DAY(column)=...),MYSQL将无法使用索引3、在JOIN操作中(需要从多个数据表提取数据时),MYSQL只有在...
分类:
数据库 时间:
2014-09-24 16:12:07
阅读次数:
198
实际上,这个页面所讲述的是在MariaDB 5.3.3(MySQL是在5.6)开始引入的一种叫做Index Condition Pushdown(以下简称ICP)的查询优化方式。由于本身不是一个层面的东西,前文中说的是Index Access,而这里是Query Optimization,所以并不构...
分类:
数据库 时间:
2014-09-23 16:25:34
阅读次数:
299
在编程领域有一句人尽皆知的法则“程序 = 数据结构 + 算法”,我个人是不太赞同这句话(因为我觉得程序不仅仅是数据结构加算法),但是在日常的学习和工作中我确认深深感受到数据结构和算法的重要性,很多东西,如果你愿意稍稍往深处挖一点,那么扑面而来的一定是各种数据结构和算法知识。例如几乎每个程序员都要打交道的数据库,如果仅仅是用来存个数据、建建表、建建索引、做做增删改查,那么也许觉得数据结构和这东西没什么关系。不过要是哪天心血来潮,想知道的多一点,想研究一下如何优化数据库,那么一定避免不了研究索引的原理,如果想要...
分类:
数据库 时间:
2014-09-17 02:24:21
阅读次数:
413
MySQL索引的匹配类型/*创建测试表droptablet_index;createtablet_index(tidintnotnullPRIMARYkeyauto_increment,tnamevarchar(100)notnull,tageTINYINTdefault0,taddvarchar(100)default‘‘,telintdefault0,tmobvarchar(20)DEFAULT‘‘,tsfzvarchar(100)default‘‘)ENGINE=InnoDBDE..
分类:
数据库 时间:
2014-09-15 03:27:38
阅读次数:
298