我们致力于一个MySQL知识的分享网站

  |   本站Feed      

MySQL MyIsam 存储引擎索引长度限制测试记录

2008-11-18 21:10:27  |   才被阅读:683 次  |   要评论?
分类: MySQL基础知识  |   发布: OurMySQL  |   来源:简朝阳
标签: , ,

MySQL MyIsam 存储引擎在创建索引的时候,索引键长度是有一个较为严格的长度限制的,所有索引键最大长度总和不能超过1000,而且不是实际数据长度的总和,而是索引键字段定义长度的总和。下面做个简单的测试,记录一下。

继续阅读全文...

Innodb 索引结构了解 - Innodb Index Structure

2008-11-18 21:06:21  |   才被阅读:796 次  |   要评论?
分类: MySQL基础知识  |   发布: OurMySQL  |   来源:简朝阳
标签: ,

每个Innodb表的数据其实可以说就是以一个树型(B-Tree)结构存储的,表的数据和主键(Primary Key)共同组成了一个索引结构,也就是我们常说的Innodb的Clustered Primary Key。在这个Clustered Primary Key中,Leaf Nodes其实就是实际的表记录,我们常规理解上的索引信息全部在Branch Nodes上面。

继续阅读全文...

MySQL排序原理分析

2008-11-02 14:32:33  |   才被阅读:728 次  |   要评论?
分类: MySQL优化设计  |   发布: OurMySQL  |   来源:丹臣
标签: ,

以上两种方法,一种是老方法,另外一种是改进的方法。两种方法各有自己的优缺点。第一种方法,对sort_buffer_size的占用主要是排序的字段以及一个row pointer,这种方式对排序内存的占用较少,可以有效的减少磁盘排序,但坏处也相当的明显,要对表进行两次扫描,第二次是要根据排好序的字段的row pointer指针回表取数据,这种方式,随着排序行数的加大,对时间的消耗将会变得无法忍受(类似于oracle的nested loop)。老方法受到两个参数的影响:sort buffer size以及read_rnd_buffer_size。

如果采用改进型方法,这种新方法,只会扫描表一次,由于在一次扫描表时,取出了查询所有需要的字段,不仅包括排序字段,全都要放在排序内存(sort buffer)里,对排序内存的需求量比较大一些,如果是对少量结果集进行排序,这种新方法与老方法的性能差异并不会太明显(此前提是在并发量较低的情况下,如果这样的排序的SQL执行频率较高,那么新方法相对老方法,优势也比较明显),因为老方法在经过第一次数据扫描后,需要排序的少量的行都在内存里,第二次也只是到内存里取,这个速度相对来说,还是比较快的。如果是大量行的排序,新方法的优势便会体现出来。

对于少量行的排序,这个工作,还是交给应用层来做最合适,也多不了几行代码。

继续阅读全文...

mysql索引优缺点及注意事项

2008-10-29 15:21:58  |   才被阅读:767 次  |   要评论?
分类: MySQL基础知识  |   发布: OurMySQL  |   来源:马永占
标签:

索引的优缺点及需要注意的9个地方

继续阅读全文...

MySQL 索引总结

2008-10-27 22:02:13  |   才被阅读:695 次  |   要评论?
分类: MySQL基础知识  |   发布: OurMySQL  |   来源:任喜军
标签:

由于索引对数据库的查询性能有着至关重要的影响,下面是我的一些总结和体会。

继续阅读全文...