MySQL 工作台  /  附录 D 如何报告错误或问题

附录 D 如何报告错误或问题

以下是有助于报告 MySQL Workbench 错误的提示和信息列表。

有用的错误报告包括:

  • 重复错误所采取的确切步骤,如果错误难以重复,最好是视频。

  • 屏幕截图(如果错误是可见的)。

  • 错误消息,包括发送到标准输出和 GUI 的文本。

  • MySQL Workbench 日志文件的副本。

    可以使用 帮助找到日志文件位置,从 MySQL Workbench 中找到日志文件。

无法重现的错误很难修复,几乎不可能修复,因此提供重现错误的必要步骤很重要。

在哪里报告错误

访问http://bugs.mysql.com/并使用 MySQL Workbench错误类别之一。

日志级别

有六种不同的日志级别,随着详细级别的增加:errorwarninginfodebug1debug2debug3。默认情况下,error启用warninginfo级别。还有一个 none禁用日志记录的级别。

重要的

debug3请在为报告生成日志之前 启用该级别。

可以使用环境变量、使用命令行参数或通过将日志级别指定为首选项来配置启用的错误日志级别(请参阅 其他首选项)。

环境变量、命令行变体和首选项接受单个错误级别,但启用更详细的选项会隐式启用低于它的级别。例如,传入info还可以启用errorwarning级别。

  • 环境变量:WB_LOG_LEVEL

    命令行选项:--log-level

笔记

如果同时设置了命令行和环境变量,则命令行优先。

例如:

# Microsoft Windows
$> cd "C:\Program Files (x86)\MySQL\MySQL Workbench CE 8.0.31\"
$> MySQLWorkbench.exe --log-level=debug3

# macOS
$> cd /Applications
$> MySQLWorkbench --log-level=debug3

# Linux (Ubuntu)
$> cd /usr/bin
$> mysqlworkbench --log-level=debug3

如果info启用该级别,系统信息和应用程序中使用的所有路径也会被记录下来。在 Microsoft Windows 上,这也意味着日志文件包含对程序有效的完整当前环境变量集。

操作系统特定说明

微软Windows

  • 日志文件位置:靠近用户的应用程序数据文件夹,例如 C:\Users\[user]\AppData\Roaming\MySQL\Workbench\log Microsoft Windows 10。

  • 如果出现错误(或异常),日志文件包含堆栈跟踪到 MySQL Workbench 可以跟踪它的点(通常只有 C# 代码,而不是 C++ 代码)。此外,如果启用了警告(或更高)日志级别,所有警告都会添加到日志中。

  • 如果是 MySQL Workbench 团队无法复制的崩溃,并且无法获取堆栈跟踪,我们将请求崩溃转储。可以 在此处找到启用崩溃转储的说明,还请阅读 MSDN 的详细信息,因为我们需要完整转储,而不是小型转储。

  • 对于与显示问题相关的崩溃,使用-swrendering参数启动 MySQL Workbench(并且只有在那时,因为它会关闭 OpenGL 渲染,这在 WBA 或 WQE 中没有用)。此输出将添加到日志文件中。

  • 如果在启动 MySQL Workbench 时发生崩溃(特别是如果错误报告包含有关 的内容 kernelbase.dll),我们将要求您 depends.exeMySQLWorkbench.exe二进制文件上运行,并询问报告的错误。

  • 如果启动 MySQL Workbench 时崩溃,并且它是 64 位版本的 Microsoft Windows,请检查是否安装了正确的 MSVC 运行时。人们经常安装它们的 64 位版本,但只有 32 位版本可以运行。

苹果系统

  • 日志文件位置:~/Library/Application Support/MySQL/Workbench/logs

  • 为 Workbench 生成的系统崩溃日志位于 ~/Library/Logs/DiagnosticReports/MySQLWorkbench*

Linux

  • 日志文件位置:~/.mysql/workbench/log

  • gdb对于崩溃,我们可能会要求使用以下步骤 生成的堆栈跟踪:

    笔记

    因为已发布的 MySQL Workbench 构建缺少调试符号,所以此步骤是可选的,可能不是必需的。

    • 在外壳中,执行source /usr/bin/mysql-workbench

    • 退出 MySQL 工作台

    • 在外壳中,执行gdb /usr/bin/mysql-workbench-bin

    • 在 gdb 界面中,键入run

    • 在 MySQL Workbench 中,重复崩溃

    • 在 gdb 界面中,键入bt

  • 如果是崩溃,也运行glxinfo。如果它也崩溃了,那么这是一个与 OpenGL 相关的驱动程序/X 服务器问题,而不是特定于 MySQL Workbench。