等待類型 說明
ASYNC_DISKPOOL_LOCK
當嘗試同步並行的線程(執行建立或初始設定檔案等任務)時出現。
ASYNC_IO_COMPLETION
當某任務正在等待 I/O 完成時出現。
ASYNC_NETWORK_IO
當任務被阻止在網路之後時出現在網路寫入中。
BACKUP
當任務作為備份處理的一部分被阻止時出現。
BACKUP_OPERATOR
當任務正在等待磁帶裝入時出現。若要查看磁帶狀態,請查詢 sys.dm_io_backup_tapes。如果裝入操作沒有掛起,則該等待類型可能指示磁帶機發生硬體問題。
BACKUPBUFFER
在備份任務等待資料或等待用來儲存資料的緩衝區時發生。此類型不常見,只有當任務等待裝入磁帶時才會出現。
BACKUPIO
在備份任務等待資料或等待用來儲存資料的緩衝區時發生。此類型不常見,只有當任務等待裝入磁帶時才會出現。
BACKUPTHREAD
當某任務正在等待備份任務完成時出現。等待時間可能較長,從幾分鐘到幾個小時。如果被等待的任務正處於 I/O 進程中,則該類型不指示發生問題。
BAD_PAGE_PROCESS
當後台錯誤頁記錄器正在嘗試避免每隔五秒以上的時間運行時出現。
BROKER_RECEIVE_WAITFOR
當 RECEIVE WAITFOR 正在等待時出現。如果沒有準備接收的訊息,則通常出現該狀態。
BROKER_TRANSMITTER
當 SQL Server 2005 Service Broker 傳輸代碼中出現非常短暫的等待時出現。
BROKER_SHUTDOWN
當按計劃關閉 Service Broker 時出現。該狀態出現的時間應當盡量短暫。
BROKER_MASTERSTART
當某任務正在等待 Service Broker 的主事件處理常式啟動時出現。該狀態出現的時間應當非常短暫。
BROKER_EVENTHANDLER
當某任務正在 Service Broker 的主事件處理常式中等待時出現。出現時間應該非常短暫。
BROKER_REGISTERALLENDPOINTS
在初始化 Service Broker 串連端點的過程中出現。出現時間應該非常短暫。
BROKER_INIT
當初始化每個活動資料庫中的 Service Broker 時出現。該狀態不應當頻繁出現。
BUILTIN_HASHKEY_MUTEX
僅供內部使用。
CHKPT
在伺服器啟動時出現以通知檢查點線程可以啟動。
CLR_AUTO_EVENT
當某任務當前正在執行通用語言執行平台 (CLR) 執行並且正在等待特殊的自動事件啟動時出現。
CLR_CRST
當某任務當前正在執行 CLR 執行並且正在等待輸入當前由另一項任務正在使用的任務的關鍵區段時出現。
CLR_MANUAL_EVENT
當某任務當前正在執行 CLR 執行並且正在等待特定手動事件啟動時出現。
CLR_MONITOR
當某任務當前正在執行 CLR 執行並且正在等待擷取用於監視器的鎖時出現。
CLR_RWLOCK_READER
當某任務當前正在執行 CLR 執行並且正在等待讀取器鎖時出現。
CLR_RWLOCK_WRITER
當某任務當前正在執行 CLR 執行並且正在等待編寫器鎖時出現。
CLR_TASK_JOIN
當某任務當前正在執行 CLR 執行並且正在等待另一項任務結束時出現。當兩任務之間具有聯結時出現該等待狀態。
CLR_SEMAPHORE
當某任務當前正在執行 CLR 執行並且正在等待訊號量時出現。
CMEMTHREAD
當某任務正在等待安全執行緒記憶體對象時出現。當多項任務嘗試分配來自同一個記憶體對象的記憶體而導致出現爭用時,便可能延長等待時間。
CXPACKET
當嘗試同步查詢處理器交換迭代器時出現。如果針對該等待類型的爭用成為問題時,可以考慮降低並行度。
DEADLOCK_ENUM_MUTEX
當死結監視器和 sys.dm_os_waiting_tasks 嘗試確保 SQL Server 不同時運行多個死結搜尋時出現。
DEADLOCK_TASK_SEARCH
當某任務正在等待內部死結監視器同步時出現。對於該等待類型的事件,死結監視器在大多數時間都處於空閑狀態。
DISABLE_VERSIONING
當 SQL Server 輪詢版本交易管理員,以查看最早的活動事務的時間戳記是否晚於狀態開始更改時的時間戳記時出現。如果是,則所有在 ALTER DATABASE 語句運行之前啟動的快照事務都已完成。當 SQL Server 通過 ALTER DATABASE 語句禁用版本控制時使用該等待狀態。
DISKIO_SUSPEND
當某任務正在等待訪問檔案(外部備份處於活動狀態)時出現。針對每個正在等待的使用者進程報告該狀態。每個使用者進程大於五的計數可能指示外部備份需要太長時間才能完成。
DROPTEMP
當某任務在串連處於死結狀態的情況下進入睡眠時出現。該任務將在每次(指數化)重試刪除操作前進行等待。
DTC
當某任務正在等待用於管理狀態轉換的事件時出現。該狀態控制當 SQL Server 接收到 Microsoft 分散式交易協調器 (MS DTC) 服務停用通知之後執行 MS DTC 事務恢複的時間。
該狀態還說明在 SQL Server 啟動了 MS DTC 事務提交並且 SQL Server 正在等待 MS DTC 提交完成時進行等待的任務。
DTC_ABORT_REQUEST
當 MS DTC 背景工作執行緒會話正在等待獲得 MS DTC 事務的所有權時,在該會話中出現。當 MS DTC 擁有了事務後,該會話可以復原事務。通常,該會話將等待另一個正在使用事務的會話。
DTC_RESOLVE
當恢複任務正在等待跨資料庫事務中的 master 資料庫以查詢該事務的結果時出現。
DTC_STATE
當某任務正在等待對內部 MS DTC 全域狀態物件的更改進行保護的事件時出現。該狀態應當保持非常短的時間。
DTC_TMDOWN_REQUEST DTC_TMDOWN_REQUEST
當 SQL Server 接收到 MS DTC 服務停用通知時,在 MS DTC 背景工作執行緒會話中出現。首先,背景工作執行緒將等待 MS DTC 恢複進程啟動。然後,背景工作執行緒等待擷取其正在處理的分散式交易的結果。此過程可能一直執行,直到重建立立與 MS DTC 服務的串連。
DTC_WAITFOR_OUTCOME
當恢複任務等待 MS DTC 處於活動狀態以啟用準備好的事務的解決方案時出現。
DUMP_LOG_COORDINATOR
當主任務正在等待子任務產生資料時出現。該狀態通常不會出現。長時間的等待指示出現意外的阻塞。應當對子任務進行調查。
ENABLE_VERSIONING
當 SQL Server 在聲明資料庫可以轉換到 DBVER_ON 狀態之前,等待該資料庫中的所有更新事務完成時出現。當 SQL Server 通過 ALTER DATABASE 語句啟用版本控制時使用該狀態。
EXCHANGE
在同步查詢處理器交換迭代器期間出現。很少發生。
EXECSYNC
在同步與交換迭代器無關的地區內的查詢處理器期間出現。此類地區的樣本包括位元影像、大型二進位對象 (LOB) 以及假離線迭代器。LOB 可能經常使用該等待狀態。位元影像和假離線使用不應當導致爭用。
FCB_REPLICA_READ
當同步快照(或 DBCC 建立的臨時快照)疏鬆檔案的讀取時出現。
FCB_REPLICA_WRITE
當同步快照(或 DBCC 建立的臨時快照)疏鬆檔案的頁推送或頁請求時出現。
HTTP_ENDPOINT_COLLCREATE
在啟動時出現以建立端點集合。
注意:
該狀態並非特定於 HTTP。
HTTP_ENUMERATION
在啟動時出現,以枚舉 HTTP 端點以啟動 HTTP。
IMPPROV_IOWAIT
當 SQL Server 等待 Bulkload I/O 完成時出現。
IO_AUDIT_MUTEX
僅供內部使用。
LATCH_DT
針對分散式交易閂鎖的閂鎖等候。它不包括緩衝區閂鎖或事務標記閂鎖。
LATCH_EX
針對排他閂鎖的閂鎖等候。不包括緩衝區閂鎖或事務標記閂鎖。
LATCH_KP
針對保留閂鎖的閂鎖等候。不包括緩衝區閂鎖或事務標記閂鎖。
LATCH_NL
針對空閂鎖的閂鎖等候。不包括緩衝區閂鎖或事務標記閂鎖。
LATCH_SH
針對共用閂鎖的閂鎖等候。不包括緩衝區閂鎖或事務標記閂鎖。
LATCH_UP
針對更新閂鎖的閂鎖等候。不包括緩衝區閂鎖或事務標記閂鎖。
LAZYWRITER_SLEEP
當惰性編寫器被掛起時出現。正在等待的背景工作所用時間的度量值。在尋找使用者阻隔點所時不要考慮該狀態。
LCK_M_BU
當某任務正在等待擷取大容量更新鎖定時出現。
LCK_M_IS LCK_M_IU
當某任務正在等待擷取意圖共用鎖時出現。
LCK_M_IU
當某任務正在等待擷取意向更新鎖定時出現。
LCK_M_IX
當某任務正在等待擷取意向獨佔鎖定時出現。
LCK_M_RIn_NL
當某任務正在等待擷取當前索引值上的 NULL 鎖以及當前鍵和上一個鍵之間的插入範圍鎖時出現。鍵上的 NULL 鎖是指立即釋放的鎖。
LCK_M_RIn_S
當某任務正在等待擷取當前索引值上的共用鎖定以及當前鍵和上一個鍵之間的插入範圍鎖時出現。
LCK_M_RIn_U
任務正在等待擷取當前索引值上的更新鎖定以及當前鍵和上一個鍵之間的插入範圍鎖。
LCK_M_RIn_X
當某任務正在等待擷取當前索引值上的獨佔鎖定以及當前鍵和上一個鍵之間的插入範圍鎖時出現。
LCK_M_RS_S
當某任務正在等待擷取當前索引值上的共用鎖定以及當前鍵和上一個鍵之間的共用範圍鎖時出現。
LCK_M_RS_U
當某任務正在等待擷取當前索引值上的更新鎖定以及當前鍵和上一個鍵之間的修改範圍鎖時出現。
LCK_M_RX_S
當某任務正在等待擷取當前索引值上的共用鎖定以及當前鍵和上一個鍵之間的排他範圍鎖時出現。
LCK_M_RX_U
當某任務正在等待擷取當前索引值上的更新鎖定以及當前鍵和上一個鍵之間的排他範圍鎖時出現。
LCK_M_RX_X
當某任務正在等待擷取當前索引值上的獨佔鎖定以及當前鍵和上一個鍵之間的排他範圍鎖時出現。
LCK_M_S
當某任務正在等待擷取共用鎖定時出現。
LCK_M_SCH_M
當某任務正在等待擷取架構修改鎖時出現。
LCK_M_SCH_S
當某任務正在等待擷取架構共用鎖定時出現。
LCK_M_SIU
當某任務正在等待擷取共用意向更新鎖定時出現。
LCK_M_SIX
當某任務正在等待擷取共用意向獨佔鎖定時出現。
LCK_M_U
當某任務正在等待擷取更新鎖定時出現。
LCK_M_UIX
當某任務正在等待擷取更新意向獨佔鎖定時出現。
LCK_M_X
當某任務正在等待擷取獨佔鎖定時出現。
DBMIRROR_SEND
當某任務正在等待清除網路層的通訊積壓以便能夠發送訊息時出現。指示通訊層正在開始重載並影響資料庫鏡像資料輸送量。
重要事項:
Microsoft 支援策略不適用於 SQL Server 2005 的資料庫鏡像功能。根據預設設定,資料庫鏡像當前已被禁用,但通過使用追蹤旗標 1400 作為啟動參數可以啟用該功能,該功能僅供評估使用。(有關追蹤旗標的詳細資料,請參閱追蹤旗標 (Transact-SQL)。)不要在生產環境中使用資料庫鏡像,Microsoft 支援服務不支援使用資料庫鏡像的資料庫或應用程式。在 SQL Server 2005 中包括資料庫鏡像文檔僅供評估使用,SQL Server 2005 支援和升級文檔策略不適用於資料庫鏡像文檔。
DBMIRRORING_CMD
當某任務正在等待日誌記錄重新整理到磁碟時出現。該等待狀態應當保留較長的時間。
LOGBUFFER
當某任務正在等待日誌緩衝區的空間以儲存日誌記錄時出現。連續的高值可能指示日誌裝置無法跟上伺服器產生的日誌量。
LOGMGR
當某任務正在等待任何未完成的日誌 I/O 在關閉日誌之前完成時出現。
LOGMGR_FLUSH
僅供內部使用。
LOGMGR_RESERVE_APPEND
當某任務正在等待查看日誌截斷是否能釋放日誌空間以使該任務能寫入新的日誌記錄時出現。
LOWFAIL_MEMMGR_QUEUE
當某任務正在從因記憶體不足而失敗的隊列中刪除頁時出現。
MSQL_DQ
當某任務正在等待分散式查詢操作完成時出現。 使用該狀態檢測潛在的多個活動的結果集 (MARS) 應用程式死結。該等待將在分散式查詢調用完成時結束。
MSQL_XACT_MGR_MUTEX
當某任務正在等待擷取會話交易管理員的所有權以執行會話層級事務操作時出現。互斥體用於同步同一個會話中不同線程的交易管理員對象的使用。
MSQL_XP
當某任務正在等待擴充預存程序結束時出現。SQL Server 使用該等待狀態檢測潛在的 MARS 應用程式死結。該等待將在擴充預存程序調用結束時停止。
OLEDB
當 SQL Server 調用 Microsoft SQL Native Client OLEDB 提供者時發生。該狀態不用於同步。
PAGEIOLATCH_DT
在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於“破壞”模式。
PAGEIOLATCH_EX
在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於“獨佔”模式。
PAGEIOLATCH_KP
在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於“保持”模式。
PAGEIOLATCH_NL
在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於“空”模式。
PAGEIOLATCH_SH
在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於“共用”模式。
PAGEIOLATCH_UP
在任務等待 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於“更新”模式。
PAGELATCH_DT
在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於“破壞”模式。
PAGELATCH_EX
在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於“獨佔”模式。
PAGELATCH_KP
在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於“保持”模式。
PAGELATCH_NL
在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於“空”模式。
PAGELATCH_SH
在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於“共用”模式。
PAGELATCH_UP
在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於“更新”模式。
PRINT_ROLLBACK_PROGRESS
用於等待使用者進程在已通過 ALTER DATABASE 終止子句完成轉換的資料庫中結束。有關詳細資料,請參閱 ALTER DATABASE (Transact-SQL)。
PWAIT_QPJOB_WAITFOR_ABORT
指示非同步統計資訊自動更新在運行時通過調用 KILL 命令而取消。目前更新已完成,但是在終止線程訊息協調完成之前一直於掛起狀態。這是一個普通而少見的狀態,應當非常短暫。正常情況下,該值不到一秒鐘。
PWAIT_QPJOB_KILL
指示非同步統計資訊自動更新在開始運行時通過調用 KILL 命令而取消。終止線程處於掛起狀態,等待它開始偵聽 KILL 命令。正常情況下,該值不到一秒鐘。
QRY_MEM_GRANT_INFO_MUTEX
當查詢執行記憶體管理嘗試控制對靜態授予資訊列表的訪問時出現。該狀態列出當前已獲批准的記憶體請求以及正在等待的記憶體請求的有關資訊。該狀態是一個簡單的存取控制狀態。該狀態始終不應當等待較長的時間。如果未釋放互斥體,則所有佔用記憶體的新查詢都將停止回應。
QUERY_NOTIFICATION_MGR_MUTEX
保護查詢通知管理器中的垃圾收集隊列。
QUERY_NOTIFICATION_SUBSCRIPTION_MUTEX
基於每個訂閱控制事務的互斥體。這表示每個訂閱具有一個互斥體並使用該互斥體更改其事務狀態。
QUERY_NOTIFICATION_TABLE_MGR_MUTEX
僅供內部使用。
QUERY_NOTIFICATION_UNITTEST_MUTEX
僅供內部使用。
SQLTRACE_BUFFER_FLUSH
當某任務正在等待背景工作將跟蹤緩衝區每隔四秒重新整理到磁碟時出現。