Övervaka anslutningar, sessioner och begäranden med DMV:er

Gäller för: SQL-analysslutpunkt och lager i Microsoft Fabric

Du kan använda befintliga dynamiska hanteringsvyer (DMV:er) för att övervaka anslutnings-, sessions- och begärandestatus i Microsoft Fabric. Mer information om verktyg och metoder för att köra T-SQL-frågor finns i Fråga informationslagret.

Övervaka anslutningar, sessioner och begäranden med hjälp av DMV:er för frågelivscykel

För den aktuella versionen finns det tre dynamiska hanteringsvyer (DMV:er) som du kan använda för att få insikter om sql-frågelivscykeln live.

Dessa tre DMV:er ger detaljerad information om följande scenarier:

  • Vem kör användaren sessionen?
  • När startades sessionen av användaren?
  • Vad är ID:t för anslutningen till informationslagret och sessionen som kör begäran?
  • Hur många frågor körs aktivt?
  • Vilka frågor är tidskrävande?

I den här självstudien lär du dig hur du övervakar dina SQL-frågor som körs med dynamiska hanteringsvyer (DMV:er).

Exempel på DMV-frågor

Följande exempel frågar sys.dm_exec_sessions efter alla sessioner som körs för närvarande.

SELECT * 
FROM sys.dm_exec_sessions;

Screenshot showing the results of sys.dm_exec_sessions.

Hitta relationen mellan anslutningar och sessioner

I följande exempel kopplas sys.dm_exec_connections och sys.dm_exec_sessions till relationen mellan den aktiva sessionen i en specifik anslutning.

SELECT connections.connection_id,
 connections.connect_time,
 sessions.session_id, sessions.login_name, sessions.login_time, sessions.status
FROM sys.dm_exec_connections AS connections
INNER JOIN sys.dm_exec_sessions AS sessions
ON connections.session_id=sessions.session_id;

Identifiera och DÖDA en långvarig fråga

Den första frågan identifierar listan över långvariga frågor i den ordning som frågan har tagit längst tid sedan den kom.

SELECT request_id, session_id, start_time, total_elapsed_time
FROM sys.dm_exec_requests
WHERE status = 'running'
ORDER BY total_elapsed_time DESC;

Den andra frågan visar vilken användare som körde sessionen som har den långvariga frågan.

SELECT login_name
FROM sys.dm_exec_sessions
WHERE 'session_id' = 'SESSION_ID WITH LONG-RUNNING QUERY';

Den här tredje frågan visar hur du använder KOMMANDOT KILL på session_id med den långvariga frågan.

KILL 'SESSION_ID WITH LONG-RUNNING QUERY'

Till exempel

KILL '101'

Behörigheter

  • En administratör har behörighet att köra alla tre DMV:er (sys.dm_exec_connections, , sys.dm_exec_sessionssys.dm_exec_requests) för att se sin egen och andras information på en arbetsyta.
  • En medlem, deltagare och visningsprogram kan köra sys.dm_exec_sessions och sys.dm_exec_requests se sina egna resultat i lagret, men har inte behörighet att köra sys.dm_exec_connections.
  • Endast en administratör har behörighet att köra KILL kommandot.