(3.2)mysql基础深入——mysql源码阅读工具安装与应用

(3.2)mysql基础深入——mysql源码阅读工具安装与应用

关键字:mysql源码阅读工具

工具列举:一般多用【1】【2】【3】吧

【1】source insight  【2】写字板/记事本 UE  【3】gdb(linux系统自带工具,调试代码(线程))

【4】eclipse  【5】vs2012

1、source insight(基本使用教程

1.安装source insightt4.0;

2.使用下载好的sourceinsight4.exe替换安装在program file(x86)目录下的sourceinsight4.exe;

3.启动sourceinsight,导入下载好的后缀名为.lic的license文件

2、notepad++、写字板/记事本 UE

  直接下载好,打开即可

3、GDB for mysql:

  【1】 识别故障

  【2】场景重现

  【3】创建测试案例确认BUG

  【4】定位缺陷根源

  【5】测试和创建补丁修复BUG

3.1【安装GDB】

  【1】安装OS过程中选择开发包

  【2】yum install cmake make gcc gcc-c++ ncurses-devel bison gdb

  如果编译安装mysql,可以加参数: -DWITH_DEBUG=1   可以更好的方便调试(生产勿用)

3.2【使用GDB】

  【1】启动:gdb --args /mysql/app/mysql/bin/mysqld --defaults-file=/mysql/data/3306/my.cnf --basedir=/mysql/app/mysql --datadir=/mysql/data/3306 --skip-networking 

  (前提是mysql要先开启)

  【2】找到mysql进程号,调试进程

    attach 进程号(mysqld 进程号,可以使用ps -ef|grep mysql 来查看)

   【3】设置断点

    b 源码中的方法名

  【4】操作

    n为next下一步,c为continue,bt 从下往上看

    线程: 

    

vi gdb_mysql_thread.sh
gdb -ex "set pagination 0" -ex "thread apply all bt" --batch --pid $1

./gdb_mysql_thread.sh 进程号 > 1.out
原文地址:https://www.cnblogs.com/gered/p/10493144.html