### 5.9.1 调试 MySQL 服务器

[5.9.1.1 编译 MySQL 进行调试](compiling-for-debugging.html)
[5.9.1.2 创建跟踪文件](making-trace-files.html)
[5.9.1.3 使用带有 PDB 的 WER 创建 Windows 故障转储](making-windows-dumps.html)
[5.9.1.4 gdb下调试mysqld](using-gdb-on-mysqld.html)
[5.9.1.5 使用堆栈跟踪](using-stack-trace.html)
[5.9.1.6 使用服务器日志查找 mysqld 中的错误原因](using-log-files.html)
[5.9.1.7 如果遇到表损坏，请制作测试用例](reproducible-test-case.html)

[](<>)[](<>)[](<>)

如果您正在使用 MySQL 中非常新的一些功能，您可以尝试运行[**mysqld**](mysqld.html)与[`--skip-new`](server-options.html#option_mysqld_skip-new)选项（禁用所有新的、可能不安全的功能）。看[第 B.3.3.3 节，“如果 MySQL 不断崩溃怎么办”](crashing.html).

如果[**mysqld**](mysqld.html)不想开始，验证你没有`我的.cnf`干扰您的设置的文件！你可以检查你的`我的.cnf`争论与[**mysqld --print-defaults**](mysqld.html)并从以下开始避免使用它们[**mysqld --no-defaults ...**](mysqld.html).

如果[**mysqld**](mysqld.html)开始消耗 CPU 或内存，或者如果它“挂起”，您可以使用[**mysqladmin 进程列表状态**](mysqladmin.html)找出是否有人正在执行需要很长时间的查询。跑步可能是个好主意[**mysqladmin -i10 进程列表状态**](mysqladmin.html)如果您在新客户端无法连接时遇到性能问题或问题，则在某些窗口中。

命令[**mysqladmin 调试**](mysqladmin.html)将有关使用中的锁、已用内存和查询使用情况的一些信息转储到 MySQL 日志文件。这可能有助于解决一些问题。即使您没有编译 MySQL 进行调试，此命令也提供了一些有用的信息！

如果问题是某些表越来越慢，您应该尝试使用优化表[`优化表`](optimize-table.html)要么[**迈萨姆奇克**](myisamchk.html).看[第 5 章，*MySQL 服务器管理*](server-administration.html).您还应该检查慢查询[`解释`](explain.html).

您还应该阅读本手册中特定于操作系统的部分，了解您的环境可能特有的问题。看[第 2.1 节，“一般安装指南”](general-installation-issues.html).
