共用方式為


DBCC TRACEON (Transact-SQL)

適用於:SQL ServerAzure SQL 受控執行個體

啟用指定的追蹤旗標。

Transact-SQL 語法慣例

Syntax

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

另請參閱