SQL Server 各任務所維護

SQL Server 正在運行的代碼查看sql

 

 SELECT  [Spid] = session_id ,
            ecid ,
            [Database] = DB_NAME(sp.dbid) ,
            [User] = nt_username ,
            [Status] = er.status ,
            [Wait] = wait_type ,
            [Individual Query] = SUBSTRING(qt.text,
                                           er.statement_start_offset / 2,
                                           ( CASE WHEN er.statement_end_offset = -1
                                                  THEN LEN(CONVERT(NVARCHAR(MAX), qt.text))
                                                       * 2
                                                  ELSE er.statement_end_offset
                                             END - er.statement_start_offset )
                                           / 2) ,
            [Parent Query] = qt.text ,
            Program = program_name ,
            hostname ,
            nt_domain ,
            start_time
    FROM    sys.dm_exec_requests er
            INNER JOIN sys.sysprocesses sp ON er.session_id = sp.spid
            CROSS APPLY sys.dm_exec_sql_text(er.sql_handle) AS qt
    WHERE   session_id > 50 -- Ignore system spids.
            AND session_id NOT IN ( @@SPID ) -- Ignore this current statement.
ORDER BY    1 ,2

殺死進程方法:數據庫

 

-- eg: kill 222
kill <spid>

 

狀態類型查看(來自微軟官網)緩存

等待類型 說明
ABR 標識爲僅供參考。不提供支持。不保證之後的兼容性。
ASSEMBLY_LOAD 在以獨佔的方式訪問程序集加載時出現。
ASYNC_DISKPOOL_LOCK 當嘗試同步並行的線程(執行建立或初始化文件等任務)時出現。
ASYNC_IO_COMPLETION 當某任務正在等待 I/O 完成時出現。
ASYNC_NETWORK_IO 當任務被阻止在網絡以後時出如今網絡寫入中。驗證客戶端是否正在處理來自服務器的數據。
AUDIT_GROUPCACHE_LOCK 當等待控制對某個特殊緩存的訪問的鎖時出現。該緩存包含正在使用哪些審覈來審覈每一個審覈操做組的相關信息。
AUDIT_LOGINCACHE_LOCK 當等待控制對某個特殊緩存的訪問的鎖時出現。該緩存包含正在使用哪些審覈來審覈登陸審覈操做組的相關信息。
AUDIT_ON_DEMAND_TARGET_LOCK 當等待用於確保擴展事件目標相關審覈的單一初始化的鎖時出現。
AUDIT_XE_SESSION_MGR 當等待用於同步擴展事件會話相關審覈的啓動和中止的鎖時出現。
BACKUP 當任務做爲備份處理的一部分被阻止時出現。
BACKUP_OPERATOR 當任務正在等待磁帶裝入時出現。若要查看磁帶狀態,請查詢 sys.dm_io_backup_tapes。若是裝入操做沒有掛起,則該等待類型可能指示磁帶機發生硬件問題。
BACKUPBUFFER 在備份任務等待數據或等待用來存儲數據的緩衝區時發生。此類型不常見,只有當任務等待裝入磁帶時纔會出現。
BACKUPIO 在備份任務等待數據或等待用來存儲數據的緩衝區時發生。此類型不常見,只有當任務等待裝入磁帶時纔會出現。
BACKUPTHREAD 當某任務正在等待備份任務完成時出現。等待時間可能較長,從幾分鐘到幾個小時。若是被等待的任務正處於 I/O 進程中,則該類型不指示發生問題。
BAD_PAGE_PROCESS 當後臺可疑頁記錄器正在嘗試避免每隔五秒以上的時間運行時出現。過多的可疑頁會致使記錄器頻繁運行。
BROKER_CONNECTION_RECEIVE_TASK 在等待訪問以便在鏈接端點上接收消息時出現。已序列化對端點的接收訪問。
BROKER_ENDPOINT_STATE_MUTEX 當存在訪問 Service Broker 鏈接端點狀態的爭用時出現。已序列化對更改狀態的訪問。
BROKER_EVENTHANDLER 當某任務正在 Service Broker 的主事件處理程序中等待時出現。出現時間應該很是短暫。
BROKER_INIT 當初始化每一個活動數據庫中的 Service Broker 時出現。該狀態應當頻繁出現。
BROKER_MASTERSTART 當某任務正在等待 Service Broker 的主事件處理程序啓動時出現。出現時間應該很是短暫。
BROKER_RECEIVE_WAITFOR 當 RECEIVE WAITFOR 正在等待時出現。若是沒有準備接收的消息,則一般出現該狀態。
BROKER_REGISTERALLENDPOINTS 在初始化 Service Broker 鏈接端點的過程當中出現。出現時間應該很是短暫。
BROKER_SERVICE 當與目標服務關聯的 Service Broker 目標列表更新或從新設定優先順序時出現。
BROKER_SHUTDOWN 當按計劃關閉 Service Broker 時出現。該狀態出現的時間應當儘可能短暫。
BROKER_TASK_STOP 當 Service Broker 隊列任務處理程序嘗試關閉任務時出現。已序列化狀態檢查,而且必須預先處於運行狀態。
BROKER_TO_FLUSH 當 Service Broker 惰性刷新器將內存中傳輸對象刷新到工做表時出現。
BROKER_TRANSMITTER 當 Service Broker 發送器正在等待工做時出現。
BUILTIN_HASHKEY_MUTEX 可能在實例啓動以後而在初始化內部數據結構時出現。數據結構初始化以後將不會再次出現。
CHECK_PRINT_RECORD 標識爲僅供參考。不提供支持。不保證之後的兼容性。
CHECKPOINT_QUEUE 當檢查點任務正在等待下一個檢查點請求時出現。
CHKPT 在服務器啓動時出現以通知檢查點線程能夠啓動。
CLEAR_DB 在執行會更改數據庫狀態的操做過程當中發生,例如打開或關閉數據庫。
CLR_AUTO_EVENT 當某任務當前正在執行公共語言運行時 (CLR) 執行而且正在等待特殊的自動事件啓動時出現。一般會出現長時間等待,這並不意味着出現問題。
CLR_CRST 當某任務當前正在執行 CLR 執行而且正在等待輸入當前由另外一項任務正在使用的任務的關鍵部分時出現。
CLR_JOIN 當某任務當前正在執行 CLR 執行而且正在等待另外一項任務結束時出現。當兩任務之間具備聯接時出現該等待狀態。
CLR_MANUAL_EVENT 當某任務當前正在執行 CLR 執行而且正在等待特定手動事件啓動時出現。
CLR_MEMORY_SPY 當爲用於記錄來自 CLR 的全部虛擬內存分配的數據結構等待獲取鎖時出現。若是存在並行訪問,該數據結構將被鎖定以維護其完整性。
CLR_MONITOR 當某任務當前正在執行 CLR 執行而且正在等待獲取用於監視器的鎖時出現。
CLR_RWLOCK_READER 當某任務當前正在執行 CLR 執行而且正在等待讀取器鎖時出現。
CLR_RWLOCK_WRITER 當某任務當前正在執行 CLR 執行而且正在等待編寫器鎖時出現。
CLR_SEMAPHORE 當某任務當前正在執行 CLR 執行而且正在等待信號量時出現。
CLR_TASK_START 在等待 CLR 任務完成啓動時出現。
CLRHOST_STATE_ACCESS 當等待獲取對 CLR 宿主數據結構的獨佔訪問時出現。當設置或關閉 CLR 運行時時出現此等待類型。
CMEMTHREAD 當某任務正在等待線程安全內存對象時出現。當多項任務嘗試分配來自同一個內存對象的內存而致使出現爭用時,即可能延長等待時間。
CXPACKET 當嘗試同步查詢處理器交換迭代器時出現。若是針對該等待類型的爭用成爲問題時,能夠考慮下降並行度。
CXROWSET_SYNC 在並行範圍掃描期間出現。
DAC_INIT 當正在初始化專用管理員鏈接時出現。
DBMIRROR_DBM_EVENT 標識爲僅供參考。不提供支持。不保證之後的兼容性。
DBMIRROR_DBM_MUTEX 標識爲僅供參考。不提供支持。不保證之後的兼容性。
DBMIRROR_EVENTS_QUEUE 在數據庫鏡像等待處理事件時出現。
DBMIRROR_SEND 當某任務正在等待清除網絡層的通訊積壓以便可以發送消息時出現。指示通訊層正在開始重載並影響數據庫鏡像數據吞吐量。
DBMIRROR_WORKER_QUEUE 指示數據庫鏡像工做線程任務正在等待更多的工做。
DBMIRRORING_CMD 當某任務正在等待日誌記錄刷新到磁盤時出現。該等待狀態應當保留較長的時間。
DEADLOCK_ENUM_MUTEX 在死鎖監視器和 sys.dm_os_waiting_tasks 嘗試確保 SQL Server 不一樣時運行多個死鎖搜索時出現。
DEADLOCK_TASK_SEARCH 長時間等待此資源指示服務器正在 sys.dm_os_waiting_tasks 之上執行查詢,而且這些查詢正在阻止死鎖監視器運行死鎖搜索。該等待類型僅供死鎖監視器使用。sys.dm_os_waiting_tasks 之上的查詢使用 DEADLOCK_ENUM_MUTEX。
DEBUG 在 Transact-SQL 和 CLR 調試內部同步期間出現。
DISABLE_VERSIONING 當 SQL Server 輪詢版本事務管理器,以查看最先的活動事務的時間戳是否晚於狀態開始更改時的時間戳時出現。若是是,則全部在 ALTER DATABASE 語句運行以前啓動的快照事務都已完成。當 SQL Server 經過 ALTER DATABASE 語句禁用版本控制時使用該等待狀態。
DISKIO_SUSPEND 當某任務正在等待訪問文件(外部備份處於活動狀態)時出現。針對每一個正在等待的用戶進程報告該狀態。每一個用戶進程大於五的計數可能指示外部備份須要太長時間才能完成。
DISPATCHER_QUEUE_SEMAPHORE 當調度程序池中的線程正在等待更多要處理的工做時出現。當調度程序處於空閒狀態時,此等待類型的等待時間預計要增長。
DLL_LOADING_MUTEX 在等待 XML 分析器 DLL 加載時出現。
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 當 SQL Server 接收到 MS DTC 服務不可用的通知時,在 MS DTC 工做線程會話中出現。首先,工做線程將等待 MS DTC 恢復進程啓動。而後,工做線程等待獲取其正在處理的分佈式事務的結果。此過程可能一直執行,直到從新創建與 MS DTC 服務的鏈接。
DTC_WAITFOR_OUTCOME 當恢復任務等待 MS DTC 處於活動狀態以啓用準備好的事務的解決方法時出現。
DUMP_LOG_COORDINATOR 當主任務正在等待子任務生成數據時出現。該狀態一般不會出現。長時間的等待指示出現意外的阻塞。應當對子任務進行調查。
DUMPTRIGGER 標識爲僅供參考。不提供支持。不保證之後的兼容性。
EC 標識爲僅供參考。不提供支持。不保證之後的兼容性。
EE_PMOLOCK 在語句執行過程當中特定的內存分配類型同步期間出現。
EE_SPECPROC_MAP_INIT 在對內部過程哈希表建立進行同步期間發生。此等待只能發生在 SQL Server 實例啓動以後對哈希表的初始訪問期間。
ENABLE_VERSIONING 當 SQL Server 在聲明數據庫能夠轉換到快照隔離容許的狀態以前,等待該數據庫中的全部更新事務完成時出現。當 SQL Server 經過 ALTER DATABASE 語句啓用快照隔離時使用該狀態。
ERROR_REPORTING_MANAGER 在對多個併發錯誤日誌初始化進行同步期間發生。
EXCHANGE 在並行查詢過程當中查詢處理器交換迭代器同步期間出現。
EXECSYNC 在並行查詢過程當中同步與交換迭代器無關的區域內的查詢處理器期間出現。例如,此類區域包括位圖、二進制大型對象 (LOB) 以及假脫機迭代器等。LOB 可能會常用該等待狀態。
EXECUTION_PIPE_EVENT_INTERNAL 當同步經過鏈接上下文提交的批處理執行的建立器和使用者部件期間出現。
FAILPOINT 標識爲僅供參考。不提供支持。不保證之後的兼容性。
FCB_REPLICA_READ 當同步快照(或 DBCC 建立的臨時快照)稀疏文件的讀取時出現。
FCB_REPLICA_WRITE 當同步快照(或 DBCC 建立的臨時快照)稀疏文件的頁推送或頁請求時出現。
FS_FC_RWLOCK 當 FILESTREAM 垃圾收集器等待執行下列操做之一時出現:
  • 禁用垃圾收集(由備份和還原使用)。
  • 執行 FILESTREAM 垃圾收集器的一個週期。
FS_GARBAGE_COLLECTOR_SHUTDOWN 當 FILESTREAM 垃圾收集器等待清除任務完成時出現。
FS_HEADER_RWLOCK 當等待獲取對 FILESTREAM 數據容器的 FILESTREAM 標頭的訪問,以便讀取或更新 FILESTREAM 標頭文件 (Filestream.hdr) 中的內容時出現。
FS_LOGTRUNC_RWLOCK 當等待獲取對 FILESTREAM 日誌截斷的訪問以執行下列操做之一時出現:
  • 臨時禁用 FILESTREAM 日誌 (FSLOG) 截斷(由備份和還原使用)。
  • 執行 FSLOG 截斷的一個週期。
FSA_FORCE_OWN_XACT 當 FILESTREAM 文件 I/O 操做須要綁定到關聯的事務,但該事務當前由另外一個會話擁有時出現。
FSAGENT 當 FILESTREAM 文件 I/O 操做等待的 FILESTREAM 代理資源正由另外一個文件 I/O 操做使用時出現。
FSTR_CONFIG_MUTEX 當等待另外一個 FILESTREAM 功能從新配置完成時出現。
FSTR_CONFIG_RWLOCK 當等待序列化對 FILESTREAM 配置參數的訪問時出現。
FT_METADATA_MUTEX 標識爲僅供參考。不提供支持。不保證之後的兼容性。
FT_RESTART_CRAWL 在全文爬網須要從上一個已知可用點從新啓動以便從暫時故障中恢復時出現。等待使當前正在此整體中工做的工做線程任務完成或退出當前步驟。
FULLTEXT GATHERER 在同步全文操做期間發生。
GUARDIAN 標識爲僅供參考。不提供支持。不保證之後的兼容性。
HTTP_ENUMERATION 在啓動時出現,以枚舉 HTTP 端點以啓動 HTTP。
HTTP_START 當鏈接正在等待 HTTP 完成初始化時出現。
IMPPROV_IOWAIT 當 SQL Server 等待 Bulkload I/O 完成時出現。
INTERNAL_TESTING 標識爲僅供參考。不提供支持。不保證之後的兼容性。
IO_AUDIT_MUTEX 在跟蹤事件緩衝區同步期間出現。
IO_COMPLETION 在等待 I/O 操做完成時出現。一般,該等待類型表示非數據頁 I/O。數據頁 I/O 完成等待顯示爲 PAGEIOLATCH_* waits。
IO_RETRY 當 I/O 操做(例如讀取磁盤或寫入磁盤)因爲資源不足而失敗,而後重試時出現。
IOAFF_RANGE_QUEUE 標識爲僅供參考。不提供支持。不保證之後的兼容性。
KSOURCE_WAKEUP 在等待來自服務控制管理器的請求期間由服務控制任務使用。可能會出現長時間等待,這並不指示出現問題。
KTM_ENLISTMENT 標識爲僅供參考。不提供支持。不保證之後的兼容性。
KTM_RECOVERY_MANAGER 標識爲僅供參考。不提供支持。不保證之後的兼容性。
KTM_RECOVERY_RESOLUTION 標識爲僅供參考。不提供支持。不保證之後的兼容性。
LATCH_DT 等待 DT(破壞)閂鎖時出現。它不包括緩衝區閂鎖或事務標記閂鎖。sys.dm_os_latch_stats 中提供了 LATCH_* waits 的列表。請注意,sys.dm_os_latch_stats 將 LATCH_NL、LATCH_SH、LATCH_UP、LATCH_EX 以及 LATCH_DT 等待分到一組。
LATCH_EX 等待 EX(排他)閂鎖時出現。它不包括緩衝區閂鎖或事務標記閂鎖。sys.dm_os_latch_stats 中提供了 LATCH_* waits 的列表。請注意,sys.dm_os_latch_stats 將 LATCH_NL、LATCH_SH、LATCH_UP、LATCH_EX 以及 LATCH_DT 等待分到一組。
LATCH_KP 等待 KP(保持)閂鎖時出現。它不包括緩衝區閂鎖或事務標記閂鎖。sys.dm_os_latch_stats 中提供了 LATCH_* waits 的列表。請注意,sys.dm_os_latch_stats 將 LATCH_NL、LATCH_SH、LATCH_UP、LATCH_EX 以及 LATCH_DT 等待分到一組。
LATCH_NL 標識爲僅供參考。不提供支持。不保證之後的兼容性。
LATCH_SH 等待 SH(共享)閂鎖時出現。它不包括緩衝區閂鎖或事務標記閂鎖。sys.dm_os_latch_stats 中提供了 LATCH_* waits 的列表。請注意,sys.dm_os_latch_stats 將 LATCH_NL、LATCH_SH、LATCH_UP、LATCH_EX 以及 LATCH_DT 等待分到一組。
LATCH_UP 等待 UP(更新)閂鎖時出現。它不包括緩衝區閂鎖或事務標記閂鎖。sys.dm_os_latch_stats 中提供了 LATCH_* waits 的列表。請注意,sys.dm_os_latch_stats 將 LATCH_NL、LATCH_SH、LATCH_UP、LATCH_EX 以及 LATCH_DT 等待分到一組。
LAZYWRITER_SLEEP 當惰性編寫器被掛起時出現。正在等待的後臺任務所用時間的度量值。在查找用戶阻隔點所時不要考慮該狀態。
LCK_M_BU 當某任務正在等待獲取大容量更新 (BU) 鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_IS 當某任務正在等待獲取意向共享 (IS) 鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_IU 當某任務正在等待獲取意向更新 (IU) 鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_IX 當某任務正在等待獲取意向排他 (IX) 鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RIn_NL 當某任務正在等待獲取當前鍵值上的 NULL 鎖以及當前鍵和上一個鍵之間的插入範圍鎖時出現。鍵上的 NULL 鎖是指當即釋放的鎖。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RIn_S 當某任務正在等待獲取當前鍵值上的共享鎖以及當前鍵和上一個鍵之間的插入範圍鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RIn_U 任務正在等待獲取當前鍵值上的更新鎖以及當前鍵和上一個鍵之間的插入範圍鎖。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RIn_X 當某任務正在等待獲取當前鍵值上的排他鎖以及當前鍵和上一個鍵之間的插入範圍鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RS_S 當某任務正在等待獲取當前鍵值上的共享鎖以及當前鍵和上一個鍵之間的共享範圍鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RS_U 當某任務正在等待獲取當前鍵值上的更新鎖以及當前鍵和上一個鍵之間的更新範圍鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RX_S 當某任務正在等待獲取當前鍵值上的共享鎖以及當前鍵和上一個鍵之間的排他範圍鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RX_U 當某任務正在等待獲取當前鍵值上的更新鎖以及當前鍵和上一個鍵之間的排他範圍鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_RX_X 當某任務正在等待獲取當前鍵值上的排他鎖以及當前鍵和上一個鍵之間的排他範圍鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_S 當某任務正在等待獲取共享鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_SCH_M 當某任務正在等待獲取架構修改鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_SCH_S 當某任務正在等待獲取架構共享鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_SIU 當某任務正在等待獲取共享意向更新鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_SIX 當某任務正在等待獲取共享意向排他鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_U 當某任務正在等待獲取更新鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_UIX 當某任務正在等待獲取更新意向排他鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LCK_M_X 當某任務正在等待獲取排他鎖時出現。有關鎖兼容性矩陣,請參閱 sys.dm_tran_locks (Transact-SQL)
LOGBUFFER 當某任務正在等待日誌緩衝區的空間以存儲日誌記錄時出現。連續的高值可能指示日誌設備沒法跟上服務器生成的日誌量。
LOGGENERATION 標識爲僅供參考。不提供支持。不保證之後的兼容性。
LOGMGR 在數據庫關閉過程當中,當某任務正在等待任何未完成的日誌 I/O 在關閉日誌以前完成時出現。
LOGMGR_FLUSH 標識爲僅供參考。不提供支持。不保證之後的兼容性。
LOGMGR_QUEUE 在日誌編寫器任務等待工做請求時出現。
LOGMGR_RESERVE_APPEND 當某任務正在等待查看日誌截斷是否能釋放日誌空間以使該任務能寫入新的日誌記錄時出現。請考慮爲受影響的數據庫增長日誌文件的大小以減小該等待時間。
LOWFAIL_MEMMGR_QUEUE 在等待可用內存期間出現。
MISCELLANEOUS 標識爲僅供參考。不提供支持。不保證之後的兼容性。
MSQL_DQ 當某任務正在等待分佈式查詢操做完成時出現。它用於檢測潛在的多個活動的結果集 (MARS) 應用程序死鎖。該等待將在分佈式查詢調用完成時結束。
MSQL_XACT_MGR_MUTEX 當某任務正在等待獲取會話事務管理器的全部權以執行會話級別事務操做時出現。
MSQL_XACT_MUTEX 在事務使用同步期間出現。請求必須先獲取互斥體纔可使用事務。
MSQL_XP 當某任務正在等待擴展存儲過程結束時出現。SQL Server 使用該等待狀態檢測潛在的 MARS 應用程序死鎖。該等待將在擴展存儲過程調用結束時中止。
MSSEARCH 在全文搜索調用期間出現。該等待在全文操做完成時結束。它不指示爭用,而指示全文操做的持續時間。
NET_WAITFOR_PACKET 在網絡讀取過程當中鏈接正在等待網絡數據包時出現。
OLEDB 在 SQL Server 調用 SQL Server Native Client OLE DB 訪問接口時出現。該等待類型不用於同步。而是用於指示調用 OLE DB 訪問接口的持續時間。
ONDEMAND_TASK_QUEUE 在後臺任務等待高優先級系統任務請求時出現。長時間的等待指示一直沒有要處理的高優先級請求,不該引發關注。
PAGEIOLATCH_DT 在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於「破壞」模式。長時間的等待可能指示磁盤子系統出現問題。
PAGEIOLATCH_EX 在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於「獨佔」模式。長時間的等待可能指示磁盤子系統出現問題。
PAGEIOLATCH_KP 在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於「保持」模式。長時間的等待可能指示磁盤子系統出現問題。
PAGEIOLATCH_NL 標識爲僅供參考。不提供支持。不保證之後的兼容性。
PAGEIOLATCH_SH 在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於「共享」模式。長時間的等待可能指示磁盤子系統出現問題。
PAGEIOLATCH_UP 在任務等待 I/O 請求中緩衝區的閂鎖時發生。閂鎖請求處於「更新」模式。長時間的等待可能指示磁盤子系統出現問題。
PAGELATCH_DT 在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於「破壞」模式。
PAGELATCH_EX 在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於「獨佔」模式。
PAGELATCH_KP 在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於「保持」模式。
PAGELATCH_NL 標識爲僅供參考。不提供支持。不保證之後的兼容性。
PAGELATCH_SH 在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於「共享」模式。
PAGELATCH_UP 在任務等待不處於 I/O 請求中的緩衝區閂鎖時發生。閂鎖請求處於「更新」模式。
PARALLEL_BACKUP_QUEUE 在序列化由 RESTORE HEADERONLY、RESTORE FILELISTONLY 或 RESTORE LABELONLY 生成的輸出時出現。
PREEMPTIVE_ABR 標識爲僅供參考。不提供支持。不保證之後的兼容性。
PREEMPTIVE_AUDIT_ACCESS_EVENTLOG 在 SQL Server 操做系統 (SQLOS) 計劃程序切換到搶先模式時發生,以便將審覈事件寫入 Windows 事件日誌。
PREEMPTIVE_AUDIT_ACCESS_SECLOG 在 SQLOS 計劃程序切換到搶先模式時發生,以便將審覈事件寫入 Windows 安全日誌。
PREEMPTIVE_CLOSEBACKUPMEDIA 在 SQLOS 計劃程序切換到搶先模式時發生,以便關閉備份介質。
PREEMPTIVE_CLOSEBACKUPTAPE 在 SQLOS 計劃程序切換到搶先模式時發生,以便關閉磁帶備份設備。
PREEMPTIVE_CLOSEBACKUPVDIDEVICE 在 SQLOS 計劃程序切換到搶先模式時發生,以便關閉虛擬備份設備。
PREEMPTIVE_CLUSAPI_CLUSTERRESOURCECONTROL 在 SQLOS 計劃程序切換到搶先模式時發生,以便執行故障轉移羣集操做。
PREEMPTIVE_COM_COCREATEINSTANCE 在 SQLOS 計劃程序切換到搶先模式時發生,以便建立 COM 對象。
PREEMPTIVE_SOSTESTING 標識爲僅供參考。不提供支持。不保證之後的兼容性。
PREEMPTIVE_STRESSDRIVER 標識爲僅供參考。不提供支持。不保證之後的兼容性。
PREEMPTIVE_TESTING 標識爲僅供參考。不提供支持。不保證之後的兼容性。
PREEMPTIVE_XETESTING 標識爲僅供參考。不提供支持。不保證之後的兼容性。
PRINT_ROLLBACK_PROGRESS 用於等待用戶進程在已經過 ALTER DATABASE 終止子句完成轉換的數據庫中結束。有關詳細信息,請參閱 ALTER DATABASE (Transact-SQL)
QPJOB_KILL 指示異步統計信息自動更新在開始運行時經過調用 KILL 命令而取消。終止線程處於掛起狀態,等待它開始偵聽 KILL 命令。正常狀況下,該值不到一秒鐘。
QPJOB_WAITFOR_ABORT 指示異步統計信息自動更新在運行時經過調用 KILL 命令而取消。目前更新已完成,可是在終止線程消息協調完成以前一直於掛起狀態。這是一個普通而少見的狀態,應當很是短暫。正常狀況下,該值不到一秒鐘。
QRY_MEM_GRANT_INFO_MUTEX 當查詢執行內存管理嘗試控制對靜態授予信息列表的訪問時出現。該狀態列出當前已批准的內存請求以及正在等待的內存請求的有關信息。該狀態是一個簡單的訪問控制狀態。該狀態始終不該當等待較長的時間。若是未釋放互斥體,則全部佔用內存的新查詢都將中止響應。
QUERY_ERRHDL_SERVICE_DONE 標識爲僅供參考。不提供支持。不保證之後的兼容性。
QUERY_EXECUTION_INDEX_SORT_EVENT_OPEN 當脫機建立索引生成以並行方式運行,而且正在排序的不一樣工做線程同步訪問排序文件時出現。
QUERY_NOTIFICATION_MGR_MUTEX 在查詢通知管理器中的垃圾收集隊列同步期間出現。
QUERY_NOTIFICATION_SUBSCRIPTION_MUTEX 在查詢通知中事務的狀態同步期間出現。
QUERY_NOTIFICATION_TABLE_MGR_MUTEX 在查詢通知管理器中的內部同步期間出現。
QUERY_NOTIFICATION_UNITTEST_MUTEX 標識爲僅供參考。不提供支持。不保證之後的兼容性。
QUERY_OPTIMIZER_PRINT_MUTEX 在查詢優化器診斷信息輸出生成的同步期間出現。該等待類型僅在診斷設置已根據 Microsoft 產品支持的說明啓用後出現。
QUERY_TRACEOUT 標識爲僅供參考。不提供支持。不保證之後的兼容性。
QUERY_WAIT_ERRHDL_SERVICE 標識爲僅供參考。不提供支持。不保證之後的兼容性。
RECOVER_CHANGEDB 在備用數據庫中同步數據庫狀態期間出現。
REPL_CACHE_ACCESS 在同步複製項目緩存的期間出現。在這些等待期間,複製日誌讀取器將中止,已發佈表中的數據定義語言 (DDL) 語句也將被阻止。
REPL_SCHEMA_ACCESS 在同步複製架構版本信息的期間出現。該狀態在下列狀況下存在:針對複製對象執行 DDL 語句時,以及日誌讀取器根據 DDL 出現次數生成或使用版本控制架構時。
REPLICA_WRITES 在任務等待將頁寫入數據庫快照或 DBCC 副本的操做完成時出現。
REQUEST_DISPENSER_PAUSE 在任務等待全部未完成的 I/O 完成時出現,以即可覺得快照備份凍結文件的 I/O。
REQUEST_FOR_DEADLOCK_SEARCH 在死鎖監視器等待開始下一次死鎖搜索時出現。在兩次死鎖檢測之間可能出現該等待,長時間等待此資源並不指示出現問題。
RESMGR_THROTTLED 在有新請求傳入而且基於 GROUP_MAX_REQUESTS 設置而停止時出現。
RESOURCE_QUEUE 在同步不一樣的內部資源隊列期間出現。
RESOURCE_SEMAPHORE 當因爲存在其餘併發查詢而沒法當即批准查詢內存請求時出現。等待時間較長或等待次數較多可能指示併發查詢的數量過多或內存請求的數量過多。
RESOURCE_SEMAPHORE_MUTEX 在查詢等待其保留線程的請求完成時出現。它也在同步查詢編譯和內存授予請求時出現。
RESOURCE_SEMAPHORE_QUERY_COMPILE 在併發查詢編譯的數量達到停止限制時出現。等待時間較長或等待次數較多可能指示編譯、從新編輯或不可緩存的計劃過多。
RESOURCE_SEMAPHORE_SMALL_QUERY 當因爲存在其餘併發查詢而沒法當即批准較小查詢的內存請求時出現。等待時間不該超過幾秒鐘,由於若是服務器沒法在幾秒鐘內給予請求的內存,則會將請求傳輸到主查詢內存池中。等待時間較長可能指示當主內存池被等待的查詢阻塞時併發小查詢的數量過多。
SEC_DROP_TEMP_KEY 在嘗試刪除臨時安全密鑰失敗以後並在重試以前出現。
SECURITY_MUTEX 當等待互斥體時出現,這些互斥體控制對可擴展的密鑰管理 (EKM) 加密提供程序的全局列表以及 EKM 會話的會話做用域列表的訪問。
SEQUENTIAL_GUID 當正在獲取新的連續 GUID 時出現。
SERVER_IDLE_CHECK 當資源監視器正在嘗試將 SQL Server 實例聲明爲空閒或正在嘗試喚醒時,在 SQL Server 實例空閒狀態的同步期間出現。
SHUTDOWN 在關閉語句等待活動鏈接退出時出現。
SLEEP_BPOOL_FLUSH 當檢查點爲了不磁盤子系統氾濫而停止新 I/O 的發佈時出現。
SLEEP_DBSTARTUP 在等待全部數據庫恢復時數據庫的啓動期間出現。
SLEEP_DCOMSTARTUP 一般在等待 DCOM 初始化完成時 SQL Server 實例的啓動期間出現。
SLEEP_MSDBSTARTUP 在 SQL 跟蹤等待 msdb 數據庫完成啓動時出現。
SLEEP_SYSTEMTASK 在等待 tempdb 完成啓動時後臺任務的啓動期間出現。
SLEEP_TASK 當任務在等待通常事件出現期間睡眠時出現。
SLEEP_TEMPDBSTARTUP 在任務等待 tempdb 完成啓動時出現。
SNI_CRITICAL_SECTION 在 SQL Server 網絡組件中進行內部同步期間出現。
SNI_HTTP_WAITFOR_0_DISCON 在等待未完成的 HTTP 鏈接退出的過程當中 SQL Server 的關閉期間出現。
SNI_LISTENER_ACCESS 當等待非一致性內存訪問 (NUMA) 節點更新狀態更改時出現。已序列化對狀態更改的訪問。
SNI_TASK_COMPLETION 當在 NUMA 節點狀態更改期間等待全部任務完成時出現。
SOAP_READ 在等待 HTTP 網絡讀取完成時出現。
SOAP_WRITE 在等待 HTTP 網絡寫入完成時出現。
SOS_CALLBACK_REMOVAL 在爲了刪除回調而對回調列表執行同步期間出現。服務器初始化完成以後,此計數器可能不會更改。
SOS_DISPATCHER_MUTEX 在調度程序池進行內部同步期間出現。包括調整該池時。
SOS_LOCALALLOCATORLIST 在 SQL Server 內存管理器中進行內部同步期間出現。
SOS_MEMORY_USAGE_ADJUSTMENT 在池之間調整內存使用狀況時出現。
SOS_OBJECT_STORE_DESTROY_MUTEX 當破壞池中的對象時在內存池中進行內部同步期間出現。
SOS_PROCESS_AFFINITY_MUTEX 在同步訪問進程關聯設置期間出現。
SOS_RESERVEDMEMBLOCKLIST 在 SQL Server 內存管理器中進行內部同步期間出現。
SOS_SCHEDULER_YIELD 在任務自願爲要執行的其餘任務生成計劃程序時出現。在該等待期間任務正在等待其量程更新。
SOS_SMALL_PAGE_ALLOC 在分配和釋放由某些內存對象管理的內存時出現。
SOS_STACKSTORE_INIT_MUTEX 在內部存儲初始化同步期間出現。
SOS_SYNC_TASK_ENQUEUE_EVENT 在任務以同步方式啓動時出現。SQL Server 中的大多數任務都以同步方式啓動,在此方式中控制權在任務請求放置在工做隊列以後當即返回到啓動器。
SOS_VIRTUALMEMORY_LOW 在內存分配等待資源管理器釋放虛擬內存時出現。
SOSHOST_EVENT 當宿主組件(如 CLR)在 SQL Server 事件同步對象中等待時出現。
SOSHOST_INTERNAL 在宿主組件(如 CLR)使用的內存管理器回調同步期間出現。
SOSHOST_MUTEX 當宿主組件(如 CLR)在 SQL Server 互斥體同步對象中等待時出現。
SOSHOST_RWLOCK 當宿主組件(如 CLR)在 SQL Server 讀取器編寫器同步對象中等待時出現。
SOSHOST_SEMAPHORE 當宿主組件(如 CLR)在 SQL Server 信號量同步對象中等待時出現。
SOSHOST_SLEEP 當宿主任務在等待通常事件出現期間睡眠時出現。宿主任務由宿主組件(如 CLR)使用。
SOSHOST_TRACELOCK 在同步訪問跟蹤流期間出現。
SOSHOST_WAITFORDONE 在宿主組件(如 CLR)等待任務完成時出現。
SQLCLR_APPDOMAIN 在 CLR 等待應用程序域完成啓動時出現。
SQLCLR_ASSEMBLY 在等待訪問 appdomain 中已加載的程序集列表時出現。
SQLCLR_DEADLOCK_DETECTION 在 CLR 等待死鎖檢測完成時出現。
SQLCLR_QUANTUM_PUNISHMENT 在 CLR 任務因爲已經超過了其執行量程而停止時出現。此停止已完成,以便減少此大量消耗資源的任務對其餘任務的影響。
SQLSORT_NORMMUTEX 在初始化內部排序結構時進行內部同步期間出現。
SQLSORT_SORTMUTEX 在初始化內部排序結構時進行內部同步期間出現。
SQLTRACE_BUFFER_FLUSH 當某任務正在等待後臺任務將跟蹤緩衝區每隔四秒刷新到磁盤時出現。
SQLTRACE_LOCK 在文件跟蹤過程當中同步跟蹤緩衝區期間出現。
SQLTRACE_SHUTDOWN 在跟蹤關閉等待未完成的跟蹤事件完成時出現。
SQLTRACE_WAIT_ENTRIES 在 SQL 跟蹤事件隊列等待數據包到達隊列時出現。
SRVPROC_SHUTDOWN 在關閉進程等待內部資源釋放以徹底關閉時出現。
TEMPOBJ 在臨時對象刪除同步時出現。該等待不多出現,僅在任務已請求 temp 表的獨佔訪問刪除時出現。
THREADPOOL 當某任務正在等待工做線程運行時出現。這可能指示最大工做線程數設置太低,或批處理執行時間過長,從而減小可知足其餘批處理的工做線程數。
TIMEPRIV_TIMEPERIOD 在擴展事件計時器進行內部同步期間出現。
TRACEWRITE 當 SQL 跟蹤行集跟蹤提供程序等待可用緩衝區或可處理事件的緩衝區時出現。
TRAN_MARKLATCH_DT 在等待事務標記閂鎖中的破壞模式閂鎖時出現。事務標記閂鎖用於同步提交與標記的事務。
TRAN_MARKLATCH_EX 在等待標記事務中的排他模式閂鎖時出現。事務標記閂鎖用於同步提交與標記的事務。
TRAN_MARKLATCH_KP 在等待標記事務中的保持模式閂鎖時出現。事務標記閂鎖用於同步提交與標記的事務。
TRAN_MARKLATCH_NL 標識爲僅供參考。不提供支持。不保證之後的兼容性。
TRAN_MARKLATCH_SH 在等待標記事務中的共享模式閂鎖時出現。事務標記閂鎖用於同步提交與標記的事務。
TRAN_MARKLATCH_UP 在等待標記事務中的更新模式閂鎖時出現。事務標記閂鎖用於同步提交與標記的事務。
TRANSACTION_MUTEX 在同步多個批處理訪問事務期間出現。
UTIL_PAGE_ALLOC 在內存不足期間事務日誌掃描等待可用內存時出現。
VIA_ACCEPT 當在啓動過程當中完成虛擬接口適配器 (VIA) 提供程序鏈接時出現。
VIEW_DEFINITION_MUTEX 在同步訪問已緩存的視圖定義期間出現。
WAIT_FOR_RESULTS 在等待查詢通知觸發時出現。
WAITFOR 顯示爲 WAITFOR Transact-SQL 語句的結果。等待持續時間由此語句的參數肯定。它是用戶啓動的等待。
WAITFOR_TASKSHUTDOWN 標識爲僅供參考。不提供支持。不保證之後的兼容性。
WAITSTAT_MUTEX 在同步訪問用於填充 sys.dm_os_wait_stats 的統計信息集期間出現。
WCC 標識爲僅供參考。不提供支持。不保證之後的兼容性。
WORKTBL_DROP 在刪除出現故障的工做表以後,重試以前的暫停期間出現。
WRITE_COMPLETION 當正在進行寫操做時出現。
WRITELOG 等待日誌刷新完成時出現。致使日誌刷新的常見操做是檢查點和事務提交。
XACT_OWN_TRANSACTION 在等待獲取事務的全部權時出現。
XACT_RECLAIM_SESSION 在等待會話的當前全部者釋放會話的全部權時出現。
XACTLOCKINFO 在同步訪問事務鎖列表期間出現。除事務自己以外,在頁拆分過程當中死鎖檢測和鎖遷移等操做也可訪問鎖列表。
XACTWORKSPACE_MUTEX 在同步事務中的脫離以及事務登記成員之間的數據庫鎖數時出現。
XE_BUFFERMGR_ALLPROCESSED_EVENT 在擴展事件會話緩衝區刷新到目標時發生。此等待在後臺線程上發生。
XE_BUFFERMGR_FREEBUF_EVENT 當下列任一條件成立時發生:
  • 擴展事件會話配置爲無事件損失,且會話中的全部緩衝區當前已滿。這代表擴展事件會話緩衝區過小,或應對其進行分區。
  • 審覈遇到延遲。這代表寫入審覈的驅動器上存在磁盤瓶頸。
XE_DISPATCHER_CONFIG_SESSION_LIST 在使用異步目標的擴展事件會話啓動或中止時發生。此等待代表發生瞭如下某一狀況:
  • 擴展事件會話正在向後臺線程池註冊。
  • 後臺線程池正在根據當前負荷計算須要的線程數量。
XE_DISPATCHER_JOIN 在用於擴展事件會話的後臺線程終止時發生。
XE_DISPATCHER_WAIT 在用於擴展事件會話的後臺線程等待事件緩衝區進行處理時發生。
XE_MODULEMGR_SYNC 標識爲僅供參考。不提供支持。不保證之後的兼容性。
XE_OLS_LOCK 標識爲僅供參考。不提供支持。不保證之後的兼容性。
XE_PACKAGE_LOCK_BACKOFF 標識爲僅供參考。不提供支持。不保證之後的兼容性。
相關文章
相關標籤/搜索