保存跟踪和跟踪模板

区分保存跟踪文件和保存跟踪模板很重要。保存跟踪文件是指将捕获的事件数据保存到指定位置。保存跟踪模板是指保存跟踪定义,例如指定的数据列、事件类或筛选器。

保存跟踪

如果需要在以后分析或重播捕获数据,请将捕获的事件数据保存到文件或 SQL Server 表中。使用跟踪文件可以执行下列操作:

  • 使用跟踪文件或跟踪表可以创建工作负荷,作为数据库引擎优化顾问的输入。

  • 使用跟踪文件可以捕获事件,并将跟踪文件发送给支持提供商供其分析。

  • 使用 SQL Server 中的查询处理工具可以访问数据或在 SQL Server Profiler 中查看数据。只有 sysadmin 固定服务器角色的成员或表的创建者可以直接访问跟踪表。

注意注意

将跟踪数据捕获到表比将跟踪数据捕获到文件慢。因此可以将跟踪数据捕获到文件,打开该跟踪文件,然后将跟踪另存为跟踪表。

如果您使用的是跟踪文件,SQL Server Profiler 会将捕获的事件数据(而非跟踪定义)保存到 SQL Server Profiler 跟踪文件 (*.trc) 中。保存跟踪文件时自动在文件名的末尾加上该扩展名,不管是否指定任何其他扩展名。例如,如果指定一个名为 Trace.dat 的跟踪文件,则创建的文件名为 Trace.dat.trc

重要说明重要提示

拥有 SHOWPLAN、ALTER TRACE 或 VIEW SERVER STATE 权限的用户可以对显示计划输出中捕获的查询进行查看。这些查询可能包含敏感信息,例如密码。因此,建议您仅将这些权限授予有权查看敏感信息的一类用户,例如 db_owner 固定数据库角色的成员或 sysadmin 固定服务器角色的成员。此外,建议您最好将包含显示计划相关事件的显示计划文件或跟踪文件保存到使用 NTFS 文件系统的某个位置,并且只允许有权查看敏感信息的用户对之进行访问。

保存模板

跟踪的模板定义包括事件类、数据列、筛选器和所有其他用于创建跟踪的属性(捕获的事件数据除外)。SQL Server Profiler 为常规跟踪任务和特定任务(例如,创建数据库引擎优化顾问可用于优化物理数据库设计的工作负荷)提供预定义的系统模板。还可以创建和保存用户定义模板。

导入和导出模板

SQL Server Profiler 允许在服务器之间导入和导出模板。导出模板会将现有模板的副本移到指定目录。导入模板会复制指定的模板。在 SQL Server Profiler 中查看这些模板时,可以通过模板名称后的“(user)”使它们区别于系统模板。您无法覆盖或直接修改预定义系统模板。

使用模板分析性能

如果您经常监视 SQL Server,请使用模板分析性能。模板每次都捕获相同的事件数据,并使用同一跟踪定义监视相同的事件。您不需要在每次创建跟踪时都定义事件类和数据列。此外,可以将模板提供给其他用户,供其监视特定的 SQL Server 事件。例如,支持提供商可以向客户提供一个模板。客户使用该模板捕获所需的事件数据,然后将数据发送给支持提供商供其分析。