最近遇到好多MySQL相关的问题,每次从网上查完,总是感觉不透彻。关键还是没有看源码。一直想学习下MySQL的内部实现,总是迈不出这一步。周末闲来无事,打算尝试一把。先在Mac上编译一下。这篇文章简单记录下过程。
1 源码下载
直接从github 上下载了源码。git 地址: github.com/mysql/mysql…
最新的分支是8.0, 由于项目中使用了5.7 ,所以我切换到了5.7 的分支。
git clone https://github.com/mysql/mysql-server.git
cd mysql-server
git branch -r
git checkout 5.7
复制代码
2 安装
官网上有很详细的步骤。我简单来整理下。
2.1 前置安装
主要有CMake、C++ compiler、SSL、boost、ncurses
官方文档上有介绍 dev.mysql.com/doc/refman/… 如果Mac上缺乏对应的软件,谷歌下,自己找来安装即可。
2.2 编译与安装
跳转到mysql-server目录下,为了避免污染源码,我们需要新建一个bld的文件夹。
cd mysql-server
mkdir bld
cd bld
复制代码
接下来就是执行CMAKE 了。由于CMAKE 需要依赖boost,所以在CMAKE 时,需要指定boost的路径。为了避免每次都操作,我再bash_profile 中,增加了alias.
vi ~/.bash_profile
复制代