解锁MySQL 8.0.41源码调试:Mac 11.6+CLion 2024.3.4实战指南
前期准备
环境搭建详细步骤
安装 CLion
首先,前往JetBrains 官网下载适用于 Mac 系统的 CLion 安装包。下载完成后,将安装包拖动到 “应用程序” 文件夹进行安装。安装过程中,可能会要求输入管理员密码以完成安装操作。安装完成后,首次打开 CLion 时,会提示进行一些初始设置,例如选择主题、导入设置等,可以根据个人喜好进行配置。
安装 CMake 3.30.5
下载:我用的cmake工具为Clion捆绑的,所以不需要单独下载。
安装:安装完Clion就有cmake工具了。如下图:
CMake 是一个强大的跨平台编译工具,它使用简单的配置文件来描述编译过程,能够生成适用于各种平台的makefile或项目文件。CMake的主要功能包括编译自动化和跨平台支持,它可以极大地提高软件开发的效率,特别是在涉及多个项目和复杂依赖关系时。
准备 MySQL 8.0.41 源码
获取源码:
git clone https://gitee.com/mirrors/mysql-server.git
git checkout 8.0
配置 CMake 选项
打开mysql-server项目时,会自动弹出如下页面,这样我们就可以配置了。
-DDOWNLOAD_BOOST=0:表示不自动下载 Boost 库,因为我们已经指定了 Boost 库的路径。前提是我们用以下命令把boost库下载到指定目录了。如下:
curl -L -o ~/Downloads/boost_1_77_0.tar.bz2 https://sourceforge.net/projects/boost/files/boost/1.77.0/boost_1_77_0.tar.bz2/download
mv ~/Downloads/boost_1_77_0.tar.bz2 ~/CLionProjects/mysql-server/boost/
-DWITH_BOOST=/Users/shandian/CLionProjects/mysql-server/boost:指定 Boost 库的路径,让 MySQL 在编译时能够找到 Boost 库。
-DCMAKE_BUILD_TYPE=Debug:设置构建类型为 Debug,这样在调试时能够包含更多的调试信息。
-DCMAKE_INSTALL_PREFIX=~/CLionProjects/mysql-server/build_out:指定安装路径,编译后的文件将安装到这个目录。
-DMYSQL_DATADIR=/Users/shandian/CLionProjects/mysql-server/build_out/data:指定 MySQL 的数据目录。
注意:如果有多次初始化,需要把前一次生成的的文件先删除掉,不然会导致初始化失败
-DSYSCONFDIR=~/CLionProjects/mysql-server/build_out:指定 MySQL 的配置文件目录。
-DMYSQL_UNIX_ADDR=/Users/shandian/CLionProjects/mysql-server/build_out/data/mysql.sock