Bu makalede mssql server üzerinde anlık çalışan sorguları Query Planları ile gösteren yapının komutunu görmüş olacağız.
select db_name(QP.dbid) as veritabaniadi,
QP.query_plan as [Query Plan],
SUBSTRING(t.text, r.statement_start_offset / 2,
(CASE WHEN r.statement_end_offset = -1
THEN DATALENGTH(t.text)
ELSE r.statement_end_offset END - r.statement_start_offset) / 2)
as sqlcmd, s.login_name,s.host_name , r.logical_reads, r.cpu_time cp1, r.*
from sys.dm_exec_requests r
join sys.dm_exec_sessions s on r.session_id=s.session_id
CROSS APPLY sys.dm_exec_query_plan(r.plan_handle) AS QP cross apply sys.dm_exec_sql_text(r.sql_handle) as t where r.session_id > 50
--and r.status = 'running'
and r.session_id<>@@spID
-- and r.logical_reads>100
order by start_time

Bu sorgu anlık çalışan sorgularla birlikte tüm sorguların query plan ve diğer ayarlarını göstermektedir.
Anlık sorguları görmek için sp_whoIsactive komutuna @get_plans=1 parametresi eklenirse anlık sorguların execution planıda görülmektedir.
sp_whoIsactive @get_plans=1

Başka bir makalede görüşmek dileğiyle..
“İman edip dünya ve âhiret için yararlı işler yapanlara gelince, onları da nimetlerle dolu, içinde ebedî kalacakları cennetler bekliyor. Bunu Allah gerçek olarak vaad etmiştir. O azîzdir, hakîmdir.” Lokman-8-9
