28.5.2 调试 MySQLClient 端

为了能够使用集成调试包调试 MySQLClient 端,您应该使用-DWITH_DEBUG=1配置 MySQL。参见第 2.9.7 节“ MySQL 源配置选项”

在运行 Client 端之前,您应该设置MYSQL_DEBUG环境变量:

shell> MYSQL_DEBUG=d:t:O,/tmp/client.trace
shell> export MYSQL_DEBUG

这将导致 Client 端在/tmp/client.trace中生成跟踪文件。

如果您自己的 Client 端代码有问题,则应尝试连接到服务器并使用已知有效的 Client 端运行查询。通过在调试模式下运行mysql来执行此操作(假设您已在调试打开的情况下编译了 MySQL):

shell> mysql --debug=d:t:O,/tmp/client.trace

如果您邮寄错误报告,这将提供有用的信息。参见第 1.7 节“如何报告错误或问题”

如果 Client 端崩溃时出现一些“合法”代码,则应检查mysql.h包含文件是否与 MySQL 库文件匹配。一个非常常见的错误是使用旧 MySQL 安装中的旧mysql.h文件和新 MySQL 库。