mysql
xytdatabase
这个作者很懒,什么都没留下…
展开
-
mysql 源码分析2 源码调试环境建立
1.下载源码2.建立工程3.调试待续。。。2010-03-05 12:57:56 · 83 阅读 · 0 评论 -
聚集索引与非聚集索引的基本概念
聚集索引,是一种指明表数据物理存储顺序的索引.在聚集索引中,行的物理存储顺序与索引顺序完全相同,即索引的顺序决定了表中行的存储顺序.表数据按照指定作为聚集索引的一个或多个键列排序并存储.聚集索引类似于一本字典,字典按照字母顺序存储信息,并提供引导字帮助用户快速定位信息的位置,在同一页上找到数据和它的引导字.相似的,聚集索引含有索引页和实际数据页,数据页组成聚集索引的最底层(叶子节点).根节点中的每...2010-03-30 17:14:13 · 118 阅读 · 0 评论 -
并发控制原理
事务之间的相互影响可能导致数据库状态的不一致,即使各个事务能保持状态的正确性,而且也没有任何故障发生。因此,不同事务中各个步骤的执行顺序必须以某种方式进行规范。控制这些步骤的功能由DBMS的调度器部件完成,而保证并发执行的事务能保持一致性的整个过程称为并发控制。调度器的作用如图1所示。[img]http://dl.iteye.com/upload/attachment/226829/7...2010-03-30 17:31:28 · 115 阅读 · 0 评论 -
mysql 核心内幕
目录 第1章 MySQL的前世今生 1.1 MySQL的历史 1.2 存储引擎 1.3 MySQL市场 1.4 后话第2章 数据库系统的立体视图 2.1 数据库系统架构 2.2 数据库系统的分类 2.2.1 面向对象型数据库 2.2.2 关系型数据库 2.2.3 对象关系型数据库 2.3 关系型数据库系统架构 2.3.1 客户端应用...2010-03-30 17:34:04 · 100 阅读 · 0 评论 -
memcached 架构分析
memcached 架构分析2009-12-13 21:08:34 · 93 阅读 · 0 评论 -
mysql源码分析 整体架构
大致分析完了mysql整体架构明确了mysql架构,其实也就是如下过程主要执行过程从架构上来看,Mysql服务器对于一条SQL语句的执行过程可以分成如下几部分:以下部分来自网上转帖,偷个懒,呵呵接受命令 包括用户验证,资源申请等 |命令解析 解析SQL语句,生成语法树 |...2009-07-28 03:13:43 · 206 阅读 · 0 评论 -
索引基础
1.索引是什么? 索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单2.索引高效原理 通常,索引页面相对于数据页面来说小得多。当进行数据检索时,系统先搜索索引页面,从中找到所需数据的指针,再直接通过指针从数据页面中读取数据。3.索引分类 (1)簇索引对表的物理数据页中的数据按列进行排序,然...2009-07-28 14:43:46 · 124 阅读 · 0 评论 -
B树
B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树; 如: B树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字...原创 2009-07-28 16:35:55 · 64 阅读 · 0 评论 -
no sql
什么是NoSQL1.不要叫它们数据库。2.它们可以处理超大量的数据。 3.它们运行在便宜的PC服务器集群上。4.它们击碎了性能瓶颈。 “SQL并非适用于所有的程序代码,”数据库分析师Curt Monash说。对于那些繁重 的 重复操作的数据,SQL值得花钱。但是当数据库结构非常简单时,SQL可能没有太大用处。5.没有过多的操作。...2009-08-04 02:31:37 · 57 阅读 · 0 评论 -
bitmap索引的深入研究
位图(bitmap)索引是另外一种索引类型,它的组织形式与B树索引相同,也是一棵平衡树。与B树索引的区别在于叶子节点里存放索引条目的方式不同。从前面我们知道,B树索引的叶子节点里,对于表里的每个数据行,如果被索引列的值不为空的,则会为该记录行在叶子节点里维护一个对应的索引条目。而位图索引则不是这样,其叶子节点里存放的索引条目如下图所示。 假设某个表T里所有的记录在列C1上...2010-03-30 17:03:26 · 415 阅读 · 0 评论 -
Mysql源代码分析系列
Mysql源代码分析系列(2): 源代码结构 Mysql源代码主要包括客户端程序代码,服务器端代码,测试工具和一些库构成,下面我们对比较重要的目录做些介绍。 BUILD这个目录在本系列的上篇文章中我们仔细看过,内含各种平台的编译脚本,这里就不仔细说了。 client这个目录下有如下比较让人眼熟的文件: mysql.cc, mysqlcheck.c, ...2010-03-30 16:51:57 · 631 阅读 · 0 评论 -
并发控制原理
事务之间的相互影响可能导致数据库状态的不一致,即使各个事务能保持状态的正确性,而且也没有任何故障发生。因此,不同事务中各个步骤的执行顺序必须以某种方式进行规范。控制这些步骤的功能由DBMS的调度器部件完成,而保证并发执行的事务能保持一致性的整个过程称为并发控制。调度器的作用如图1所示。 首先讨论如何保证并发执行的事务能保持数据库状态的正确性。抽象的要求称为可串行性,另外还有一个更...2010-03-30 16:46:58 · 167 阅读 · 0 评论 -
mysql 在 VS2005上面单步调试
mysql 在 VS2005上面单步调试 收藏 http://www.xianfen.net/Article137.aspxhttp://database.ctocio.com.cn/tips/114/8305614.shtmlhttp://forge.mysql.com/wiki/Building_MySQL_on_Windows环境准备:1. 获取MySQL最新...2010-03-30 13:39:28 · 106 阅读 · 0 评论 -
mysql5.1在windows下的编译方法
编译步骤1、从mysql.com上下载最新源码mysql-5.1.35.zip,近40M,需要点耐心 -- 中间网站提示我不是可信任的用户,让我填表确认,填了几次都不行,最后将fixfox关了,干了会活再回来有能下载了,呵呵,是不是ORACLE故意制造麻烦,也未可知;2、解压,阅读INSTALL-SOURCE和INSTALL-WIN-SOURCE这两个安装文件,发现文件写的一塌...2010-03-30 16:28:13 · 112 阅读 · 0 评论 -
InnoDB记录结构浅析
InnoDB记录由三个部分组成,见表1:表1:InnoDB的记录组织形式名称 长度 Field Start Offsets F*1或者 (F*2)个字节 Extra Bytes 6个字节 Field Contents 和记录的实际内容相关 备注:1) “F”是指记录的字段数量。2) “Field Start Offsets”是一个目录...2010-03-30 16:31:27 · 83 阅读 · 0 评论 -
InnoDB页结构浅析
InnoDB将所有的记录存放在数据库页中(也可以称为数据块)。一般情况下,所有的页大小都是16KB。 数据页中不仅仅包含实际的记录,还包含其它的一些内容,比如文件头以及文件尾等等。 InnoDB的页包含以下几个部分:1) Fil Header:文件头2) Page Header:页头3) Infimum+Supremum Records:...2010-03-30 16:32:08 · 91 阅读 · 0 评论 -
Mysql查询优化器浅析
1 定义 Mysql查询优化器的工作是为查询语句选择合适的执行路径。查询优化器的代码一般是经常变动的,这和存储引擎不太一样。因此,需要理解最新版本的查询优化器是如何组织的,请参考相应的源代码。整体而言,优化器有很多相同性,对mysql一个版本的优化器做到整体掌握,理解起mysql新版本以及其他数据库的优化器都是类似的。 优化器会对查询语句进行转化,转化等价的查询语句。举个例...2010-03-30 16:33:18 · 65 阅读 · 0 评论 -
mysql内核分析--innodb哈希表的内部实现(上)
1.哈希表的概述 hash表的实现是innodb的基础功能之一,通过关键值进行映射,从而迅速进行查询、插入、删除的操作。 hash表算法,在数据库内核里面被广泛的使用,举个例子,这个结构将会在下文中继续使用的。/* Data structure for a column in a table */struct dict_col_struct{...2010-03-30 16:36:56 · 93 阅读 · 0 评论 -
日志系统原理
一:事务系统1.事务的工作模型 事务必须满足原子性,所封装的操作或者全做或者全不做。事务管理系统需要做两件事,1)让日志系统产生日志,2)保证多个事务并发执行,满足ACID特性。 事务系统工作模型,见图1。 [img]http://dl.iteye.com/upload/attachment/226790/715419c6-f5fb-386e-8c8f-481e...2010-03-30 16:40:52 · 190 阅读 · 0 评论 -
数据库性能调优技术
一、概述 随着数据库在各个领域的使用不断增长,越来越多的应用提出了高性能的要求。数据库性能调优是知识密集型的学科,需要综合考虑各种复杂的因素:数据库缓冲区的大小、索引的创建、语句改写等等。总之,数据库性能调优的目的在于使系统运行得更快。 调优需要有广泛的知识,这使得它既简单又复杂。 说调优简单,是因为调优者不必纠缠于复杂的公式和规则。许多学术界和业界的研究者都在尝试...2010-03-30 16:45:16 · 133 阅读 · 0 评论 -
无法抗衡关系型数据库 NoSQL革命仍要等待
NoSQL架构可以省去将Web或者Java 应用和数据转换成SQL友好格式的时间,减少SQL语句解析与优化的时间,让应用程序的速度变得更加快捷。 关系型数据库的末日到了?mysql性能问题是固有的?sql解析,优化,索引,b树,文件io?与应用设计者没有关系或者关系不大?mysql性能很差?nosql无法保证关系数据库的数据完整性。...2009-08-04 02:40:13 · 61 阅读 · 0 评论