Chinaunix首页 | 论坛 | 博客
  • 博客访问: 68914
  • 博文数量: 13
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 174
  • 用 户 组: 普通用户
  • 注册时间: 2013-08-19 18:05
文章分类

全部博文(13)

文章存档

2015年(1)

2014年(9)

2013年(3)

我的朋友

分类: Mysql/postgreSQL

2013-08-19 18:31:50

下载代码:
下载mysql源代码
http://dev.mysql.com/downloads/mirrors.html
源代码压缩包类似这样:mysql-XXX-XXX.XXX

解压缩文件

根据压缩文件格式不同,需要用tar,zip, bz2等程序解压缩

编译和安装:
mysql源代码使用cmake构建,所以需要安装cmake
构建mysql需要 flex(词法分析) ,bison(语法分析)两个程序
cd mysql-XXX-XXX.XXX

创建一个构建目录(非必须,可以直接在源代码目录构建)
 

点击(此处)折叠或打开

  1. mkdir build-mysql

 mysql编译选项的完整说明
http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html

我们这里指定3个编译参数,其它为黙认
1)cmake_build_type, 构建类型为debug,方便调试
2)cmake_install_prefix, 程序安装目录
3)mysql_data_dir.数据库黙认目录

mysql工程还有许多编译时参数,比如指定默认TCP端口号等

点击(此处)折叠或打开

  1. cmake -DCMAKE_BUILD_TYPE=DEBUG -DCMAKE_INSTALL_PREFIX=[MYSQL_HOME] MYSQL_DATADIR=[MYSQL_DATA_DIR] ..

 执行make 

点击(此处)折叠或打开

  1. make

 安装

点击(此处)折叠或打开

  1. make install

 如果安装成功,那么[MYSQL_HOME]下面就会生成以下文件:
bin
COPYING
data
docs
include
INSTALL-BINARY
lib
man
my.cnf
mysql-test
README
scripts
share
sql-bench
support-files

bin目录下是mysql可执行程序,包括mysql服务器客户端和一些工具程序
data目录是存储数据库文件的目录
lib里面是链接库
include目录下是一些头文件,用于mysql向外部提供接口
script目录下是用于数据库初始化的脚本
 

初始化数据库文件:

cd [MYSQL_HOME]
(如果不在[MYSQL_HOME]这个目录中执行,要指定--basedir选项)
 

点击(此处)折叠或打开

  1. ./scripts/mysql_install_db --datadir=[MYSQL_DATA_DIR]

 启动mysql server:(如果编译是正确配置了datadir,可以不加datadir参数)
 

点击(此处)折叠或打开

  1. ./bin/mysqld --datadir=[MYSQL_DATA_DIR]

                         
gdb调试mysql

点击(此处)折叠或打开

  1. gdb bin/mysqld



接下来就可以调试代码了
以上仅是创建一个可以调试跟踪代码的环境,方便分析源代码
并不是从源代码安装mysql的方法,详细的安装文档请参考mysql网站
阅读(2459) | 评论(1) | 转发(1) |
1

上一篇:没有了

下一篇:Tachyon:伯克利的分布式文件系统

给主人留下些什么吧!~~

7大爷2013-08-20 09:37:28

学习了