作者:柯煜昌 顾问软件工程师
目前从事 RadonDB MySQL 容器化研发,华中科技大学研究生毕业,有多年的数据库内核开发经验。
掌握 MySQL 内核源码的阅读和调试能力,不仅是数据库研发人员的日常,也是 DBA 进阶的必经之路。
阅读本文你将了解:
- 如何准备 MySQL 调试环境
- GDB 调试入门及操作示例
- Trace 文件调试及操作示例
| 一、准备 Debug 环境
首先用源码编译安装一个用来调试的 MySQL 环境。
开启 -DWITH_DEBUG ,在源码路径创建 build 目录,进入目录并执行:
cmake .. -DWITH_BOOST=../../boost -DWITH_DEBUG=1
然后通过如下方式,确认是否编译成功。
方式一:
$ ./bin/mysqld --verbose --version
回显 debug 版本信息,则编译的是 debug 版本。
ver 8.0.18-debug for Linux on x86_64 (Source distribution)
方式二:
连接数据库,执行查看版本命令。回显包含了 debug 字样,则编译的是 debug 版本。
$ mysql> select version();
+--------------+
| version() |
+--------------+
| 8.0.18-debug |
+--------------+
1 row in set (0

本文由顾问软件工程师柯煜昌撰写,介绍了如何准备MySQL的调试环境,包括源码编译安装debug版本。接着,详细讲解了使用GDB调试MySQL,包括启动GDB、常用命令及取变量值、调试脚本的实际操作。此外,还探讨了通过Trace文件进行调试,解释了如何设置debug参数和查看Trace日志。这些内容对于数据库研发人员和DBA深入理解MySQL内核非常有帮助。
最低0.47元/天 解锁文章
972

被折叠的 条评论
为什么被折叠?



