DBCC TRACEON (Transact-SQL)

适用于:SQL ServerAzure SQL 托管实例

启用指定的跟踪标志。

Transact-SQL 语法约定

语法

DBCC TRACEON ( trace# [ , ...n ] [ , -1 ] ) [ WITH NO_INFOMSGS ]

注意

若要查看 SQL Server 2014 及更早版本的 Transact-SQL 语法,请参阅早期版本文档

参数

trace#

要打开的跟踪标志的编号。

n

表示可指定多个跟踪标志的占位符。

-1

以全局方式打开指定的跟踪标记。 此参数在 Azure SQL 托管实例中是必需的。

WITH NO_INFOMSGS

取消显示所有信息性消息。

备注

在生产服务器上,为了避免意外行为,建议您使用下列方法之一,仅在服务器范围内启用跟踪标记。

  • 使用 sqlservr.exe-T 命令行启动选项。 这是推荐的最佳实践,因为这样可确保在所有语句运行时使用已启用的跟踪标志。 这些语句包括启动脚本中的命令。 有关详细信息,请参阅 sqlservr Application
  • 仅在用户或应用程序未对系统以并行方式运行语句时,才使用 DBCC TRACEON

跟踪标记用于通过控制 SQL Server 的运行方式来自定义某些特征。 启用后的跟踪标志将在服务器中一直保持启用状态,直到执行 DBCC TRACEOFF 语句将其禁用为止。 在 SQL Server 中,有两种跟踪标志:会话和全局。 会话跟踪标志对某个连接是有效的,只对该连接可见。 全局跟踪标志在服务器级别上进行设置,对服务器上的每一个连接都可见。 若要确定跟踪标志的状态,请使用 DBCC TRACESTATUS。 若要启用/禁用跟踪标志,请使用 DBCC TRACEOFF

开启影响查询计划的跟踪标志后,执行 DBCC FREEPROCCACHE;,以便使用新的影响计划的行为重新编译缓存计划。

Azure SQL 托管实例支持以下全局跟踪标志:460、2301、2389、2390、2453、2467、7471、8207、9389、10316 和 11024。

结果集

DBCC TRACEON 返回以下消息:

DBCC execution completed. If DBCC printed error messages, contact your system administrator.

权限

要求具有 sysadmin 固定服务器角色的成员身份。

示例

以下示例通过打开跟踪标志 3205,禁用磁带驱动器的硬件压缩功能。 仅为当前连接打开此标记。

DBCC TRACEON (3205);
GO

以下示例以全局方式打开跟踪标志 3205。

DBCC TRACEON (3205, -1);
GO

以下示例以全局方式打开跟踪标志 3205 和 260。

DBCC TRACEON (3205, 260, -1);
GO

请参阅