文章詳情頁(yè)
Sql Server中通過(guò)sql命令獲取cpu占用及產(chǎn)生鎖的sql
瀏覽:32日期:2023-03-06 14:25:30
獲取SQLSERVER中產(chǎn)生鎖的SQL語(yǔ)句
SELECT
SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,((CASE statement_end_offset WHEN -1 THEN DATALENGTH(st.text) ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) + 1) as statement_text
FROM sys.dm_exec_query_stats as qs CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as st where qs.sql_handle in (select distinct sql_handle from sys.dm_exec_requests where session_id in (SELECT request_session_id as Spid
FROM sys.dm_tran_locks l
LEFT JOIN sys.partitions p
ON l.resource_associated_entity_id = p.hobt_id
LEFT JOIN sys.indexes i
ON p.object_id = i.object_id
AND p.index_id = i.index_id
LEFT JOIN sys.objects o
ON p.object_id = o.object_id
LEFT JOIN sys.schemas s
ON o.schema_id = s.schema_id
LEFT JOIN sys.objects o2
ON l.resource_associated_entity_id = o2.object_id
LEFT JOIN sys.schemas s2
ON o2.schema_id = s2.schema_id
LEFT JOIN sys.databases db
ON l.resource_database_id = db.database_id
WHERE resource_database_id = DB_ID() and request_mode in ("X")
))
查詢 某個(gè)時(shí)間點(diǎn)的,所有執(zhí)行中的sql語(yǔ)句的CPU占用時(shí)間(倒排序)
use master;SELECT [session_id], [cpu_time], [start_time], dest.[text] AS "sql", DB_NAME([database_id]) AS "dbname", [row_count] FROM sys.[dm_exec_requests] AS der CROSS APPLY sys.[dm_exec_sql_text](der.[sql_handle]) AS dest WHERE [session_id]>50 ORDER BY [cpu_time] DESC
查詢 不同sql語(yǔ)句產(chǎn)生阻塞的情況(主要是由于鎖產(chǎn)生的等待)
use master;SELECT top 50 dest.[text] AS "sql", wtt.blocking_session_id, wtt.wait_duration_ms, wtt.session_id FROM sys.dm_os_waiting_tasks wtt LEFT JOIN sys.dm_exec_requests req ON wtt.blocking_session_id = req.session_id CROSS APPLY sys.[dm_exec_sql_text](req.[sql_handle]) AS dest where wtt.blocking_session_id is not null and wtt.wait_duration_ms>2000 order by wait_duration_ms desc
到此這篇關(guān)于Sql Server中通過(guò)sql命令獲取cpu占用及產(chǎn)生鎖的sql的文章就介紹到這了,更多相關(guān)cpu占用及產(chǎn)生鎖內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
標(biāo)簽:
MsSQL
相關(guān)文章:
1. DB2 與 Microsoft SQL Server 2000 之間的 SQL 數(shù)據(jù)復(fù)制2. 細(xì)化解析:Oracle 10g ASM 的一點(diǎn)經(jīng)驗(yàn)3. DB2 XML 全文搜索之為文本搜索做準(zhǔn)備4. MyBatis中$和#的深入講解5. 國(guó)內(nèi)學(xué)院派專家對(duì)DB2 9新產(chǎn)品贊不絕口6. 解讀Oracle中代替like進(jìn)行模糊查詢的方法instr(更高效)7. MySQL Shell的介紹以及安裝8. 使用 Database Access(數(shù)據(jù)庫(kù)訪問(wèn))組件9. MySQL中庫(kù)的基本操作指南(推薦!)10. Mybatis 自動(dòng)映射(使用需謹(jǐn)慎)
排行榜

網(wǎng)公網(wǎng)安備