在数据库试验助手中创建分析报告 (SQL Server)

在两个目标服务器上重播源跟踪后,可以在数据库试验助手 (DEA) 中生成分析报告。 分析报告可有助于深入了解建议的变更对性能产生的影响。

创建分析报告

  1. 在 DEA 中,选择列表图标,指定服务器名称和身份验证类型,根据应用场景的需要选择或取消选择“加密连接”和“信任服务器证书”复选框,然后选择“连接”

    Connect to server with trace files

  2. 在“分析报告”屏幕上,选择“新建分析报告”

    Create new analysis report

  3. 在“新建分析报告”屏幕上,指定报告的名称、目标 1 和目标 2 跟踪文件的存储位置和路径,然后选择“开始”

    Specify new analysis report details

    如果输入的信息有效,则会创建分析报告。

    Newly created analysis report

    注意

    如果输入的任何信息无效,则包含不正确信息的文本框将用红色突出显示。 进行任何必要的更正,然后再次选择“开始”

有关分析报告的常见问题

问:我的分析报告告诉我什么?

DEA 使用统计测试来分析工作负荷,并确定每个查询如何从目标 1 运行到目标 2。 它为每个查询提供性能详细信息。 点击“入门”了解有关 DEA 的更多信息

问:是否可以在生成一个报告时创建新的分析报告?

不是。 目前,一次只能生成一个报告来防止冲突。 但是,可以同时运行多个捕获和重播。

问:是否可以使用命令提示符生成分析报告?

是的。 可以在命令提示符中生成分析报告。 然后,可以在 UI 中查看报告。 有关详细信息,请参阅在命令提示符中运行

使用分析报告执行故障排除

问:在服务器上生成和查看分析报告需要哪些安全权限?

登录到 DEA 的用户必须在分析服务器上拥有 sysadmin 权限。 如果用户是组的一部分,请确保该组具有 sysadmin 权限。

可能的错误 解决方案
无法连接到数据库。 请确保拥有 sysadmin 权限,以便分析和查看报告。 你可能没有对服务器或数据库的访问权限或 sysadmin 权限。 确认登录权限,然后重试。
无法在服务器“服务器名称”上生成“报告名”。 有关详细信息,请查看“报告名”报告 你可能没有生成新报告所需的 sysadmin 权限。 若要查看详细错误,请选择出错的报告,并检查 %temp%\DEA 中的日志。
当前用户没有运行操作所需的权限。 请确保拥有 sysadmin 权限,以便执行追踪和查看报告。 你没有生成新报告所需的 sysadmin 权限。

问:我无法连接到运行 SQL Server 的计算机

  • 确认运行 SQL Server 的计算机的名称有效。 若要确认,请尝试使用 SQL Server Management Studio (SSMS) 连接到服务器。
  • 确认防火墙配置不会阻止与运行 SQL Server 的计算机的连接。
  • 确认用户具有所需的用户权限。

可以在 %temp%\DEA 的日志中查看更多详细信息。 如果问题持续出现,请联系产品团队。

问:生成分析报告时出现错误

安装 DEA 后,首次生成分析报告时,需要访问 Internet。 需要访问 Internet 才能下载统计分析所需的工具包。

如果在创建报告时发生错误,进度页将显示分析生成失败的具体步骤。 可以在 %temp%\DEA 的日志中查看更多详细信息。 验证你是否具有必要的用户权限可以与服务器执行有效连接,然后重试。 如果问题持续出现,请联系产品团队。

可能的错误 解决方案
RInterop 在启动时遇到错误。 检查 RInterop 日志,然后重试。 DEA 需要访问 Internet 才能下载依赖 R 包。 检查 %temp%\RInterop 中的 RInterop 日志和 %temp%\DEA 中的 DEA 日志。 如果 RInterop 初始化不正确,或者如果无正确的 R 包执行初始化,可能会在 DEA 日志中的 InitializeRInterop 步骤之后看到异常“无法生成新分析报告”。

RInterop 日志也可能显示类似于“没有可用的 jsonlite 包”的错误。如果计算机没有 Internet 访问权限,则可以手动下载所需的 jsonlite R 包:

  • 转到计算机的文件系统上的 %userprofile%\DEARPackages 文件夹。 此文件夹包含 R 用于 DEA 的包。

  • 如果已安装的包列表中缺少 jsonlite 文件夹,则需要具有 Internet 访问权限的计算机从 https://cran.r-project.org/web/packages/jsonlite/index.html 下载 jsonlite_1.4.zip 的发布版本。

  • 将 .zip 文件复制到运行 DEA 的计算机。 提取 jsonlite 文件夹并将其复制到 %userprofile%\DEARPackages。 此步骤会自动在 R 中安装 jsonlite 包。文件夹应命名为 jsonlite,内容应直接位于该文件夹内,而不是子文件夹中。

  • 关闭 DEA,重新打开,然后重试分析。

  • 也可使用 RGUI。 转到“包”>“从 zip 安装”。 转到之前下载的包并安装。

    如果 RInterop 已初始化并正确设置,则应在 RInterop 日志中看到“安装依赖 R 包 jsonlite”。
    无法连接到 SQL Server 实例,请确保服务器名称正确,并检查登录的用户所需的访问权限。 你可能没有对服务器的访问权限或用户权限,或者服务器名称可能不正确。
    RInterop 进程超时。检查 DEA 和 RInterop 日志,在任务管理器中停止 RInterop 进程,然后重试。



    RInterop 处于故障状态。 在任务管理器中停止 RInterop 进程,然后重试。
    检查 %temp%\RInterop 中的日志以确认错误。 在重试之前,请从任务管理器中删除 RInterop 进程。 如果问题持续出现,请联系产品团队。

    问:生成报告,但数据似乎缺失

    检查运行 SQL Server 的分析计算机上的数据库,以确认数据是否存在。 检查分析数据库是否存在并检查其表。 例如,检查这些表:TblBatchesA、TblBatchesB 和 TblSummaryStats。

    如果数据不存在,则数据可能未正确复制,或者数据库可能已损坏。 如果仅缺少某些数据,则捕获或重播中创建的跟踪文件可能无法准确捕获工作负荷。 如果数据存在,请检查 %temp%\DEA 中的日志文件,以查看是否记录了任何错误。 然后,重试生成分析报告。

    有问题或反馈? 通过 DEA 工具提交反馈,方法是选择左下角的笑脸图标。

    另请参阅