Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6090595
  • 博文数量: 2759
  • 博客积分: 1021
  • 博客等级: 中士
  • 技术积分: 4091
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-11 14:14
文章分类

全部博文(2759)

文章存档

2019年(1)

2017年(84)

2016年(196)

2015年(204)

2014年(636)

2013年(1176)

2012年(463)

分类: Mysql/postgreSQL

2013-08-20 11:04:21

原文地址:构建mysql调试环境 作者:gpingyang

下载代码:
下载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网站
阅读(423) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~