Sql Server中通過sql命令獲取cpu占用及產(chǎn)生鎖的sql
獲取SQLSERVER中產(chǎn)生鎖的SQL語句
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') ))
查詢 某個時間點的,所有執(zhí)行中的sql語句的CPU占用時間(倒排序)
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語句產(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中通過sql命令獲取cpu占用及產(chǎn)生鎖的sql的文章就介紹到這了,更多相關(guān)cpu占用及產(chǎn)生鎖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SQL Server游標的使用/關(guān)閉/釋放/優(yōu)化小結(jié)
游標打破了這一查詢的思考是面向集合的規(guī)則,游標使得我們思考方式變?yōu)橹鹦羞M行,接下來為大家介紹下游標的使用感興趣的朋友可以參考下哈,希望可以幫助到你2013-03-03SQLServer日志清空語句(sql2000,sql2005,sql2008)
時候當(dāng)系統(tǒng)運行時間比較長的時候,我們把備份的數(shù)據(jù)庫還原的時候發(fā)現(xiàn),數(shù)據(jù)庫中數(shù)據(jù)文件和日志文件變的好大,特別是日志文件?,F(xiàn)在給大家介紹如何清理SQLServer數(shù)據(jù)庫日志2013-05-05SQL Server數(shù)據(jù)庫安裝時常見問題解決方案集錦
對于初學(xué)者來說,安裝SQL Server數(shù)據(jù)庫時,常常會有一些問題的出現(xiàn),這篇文章就是針對安裝時常見問題總結(jié)的解決方案,需要的朋友可以參考下2015-08-08Microsoft SQL Server 2012 數(shù)據(jù)庫安裝圖解教程
這篇文章主要為大家介紹下Microsoft SQL Server 2012 數(shù)據(jù)庫安裝教程,需要的朋友可以參考下2013-11-11如何把sqlserver數(shù)據(jù)遷移到mysql數(shù)據(jù)庫及需要注意事項
由于項目起初用的是sqlserver數(shù)據(jù)庫,后來改用了mysql數(shù)據(jù)庫,那么如何把sqlserver遷移mysql呢?對sqlserver數(shù)據(jù)庫遷移感興趣的朋友可以參考下本篇文章2015-10-10詳解SQL Server如何修改數(shù)據(jù)庫物理文件的存在位置
這篇文章主要給大家介紹了關(guān)于SQL Server如何修改數(shù)據(jù)庫物理文件存在位置的相關(guān)資料,文中介紹的非常詳細,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編一起來看看吧。2017-06-06