代码改变世界

随笔分类 -  MySQL Code Trace

Mysql源码学习——打造专属语法

2011-08-09 21:11 by 心中无码, 3463 阅读, 收藏, 编辑
摘要: 接触过SQL语句的人都会看过这家或者那家的SQL手册,其语法标准应该是从SQL92开始吧,在看SQL92标准的时候,你会发现里面定义的都是一些巴科斯范式(BNF),就是一种语法定义的标准。不管是牛X哄哄的ORACLE,还是不幸被其收购的Mysql,都会遵循里面的标准语法,当然一些扩展的语法除外,比如今天我们就会扩展一个简单的语法^-^。 阅读全文

Mysql源码学习——词法分析MYSQLlex

2011-08-03 22:23 by 心中无码, 4836 阅读, 收藏, 编辑
摘要: 客户端向服务器发送过来SQL语句后,服务器首先要进行词法分析,而后进行语法分析,语义分析,构造执行树,生成执行计划。词法分析是第一阶段,虽然在理解Mysql实现上意义不是很大,但作为基础还是学习下比较好。词法分析即将输入的语句进行分词(token),解析出每个token的意义。 阅读全文

Mysql源码学习笔记——偷窥线程

2011-04-21 22:43 by 心中无码, 2972 阅读, 收藏, 编辑
摘要: 安装完Mysql后,使用VS打开源码开开眼,我嘞个去,这代码和想象中怎么差别这么大呢?感觉代码有些凌乱,注释代码都写的比较随意,好像没有什么统一的规范,不同的文件中代码风格也有差异,可能Mysql经过了很多牛人的手之后,集众牛人之长吧。也可能是我见识比较浅薄,适应了自己的代码风格,井底之蛙了,总之还是怀着敬畏的心情开始咱的源码之旅吧。本人菜鸟,大神轻拍。 Mysql可以启动起来了,应该怎么学习呢?总不能从main开始一步一步的看吧,Mysql作为比较底层的大型软件,涉及到数据库实现的方方面面,没有厚实的数据库理论基础和对Mysql各个模块相当的熟悉,从main开始势必会把自己引入某个死胡同啊. 阅读全文

Mysql的源码安装

2011-04-10 21:31 by 心中无码, 6180 阅读, 收藏, 编辑
摘要: 闲来无事,准备学习下Mysql的源代码,花了1个小时的时间,终于在VS2008中运行起来Mysql了,有些地方也是知之甚少,理解错了希望大家及时纠正,下面介绍下如何进行配置。Step 1: 下载Mysql源代码,在http://dev.mysql.com/downloads/mysql/ 网站中,包含两种格式的Mysql,MSIInstaller 和ZIP Archive,MSI Installer是直接安装程序,ZIPArchive中包含两种大小的ZIP,从大小可以看出,较小的是源码。Install和ZIP的具体区别请参考:http://dev.mysql.com/doc/refman/5. 阅读全文