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

Gäller för: SQL-slutpunkt och informationslager i Microsoft Fabric

Du kan använda befintliga dynamiska hanteringsvyer (DMV:er) för att övervaka anslutning, session 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.

Viktigt

Microsoft Fabric är en förhandsversion.

Ö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å realtidsinformation om SQL-frågelivscykeln.

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

  • Vem är användaren som kör sessionen?
  • När startades sessionen av användaren?
  • Vad är ID:t för anslutningen till informationslagret och den session 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 får du lära dig hur du övervakar 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.

SELECT * 
FROM sys.dm_exec_sessions;

Skärmbild som visar resultatet av 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 tidskrävande 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 här 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 Admin har behörighet att köra alla tre DMV:er (sys.dm_exec_connections, sys.dm_exec_sessions, sys.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 informationslagret, men har inte behörighet att köra sys.dm_exec_connections.
  • Endast en Admin har behörighet att köra KILL kommandot.

Nästa steg