Valvo yhteyksiä, istuntoja ja pyyntöjä DMV-tiedostoilla
Koskee:✅ SQL-analytiikan päätepiste ja Microsoft Fabric -varasto
Aiemmin luotujen dynaamisten hallintanäkymien avulla voit valvoa yhteyksiä, istuntoja ja pyynnön tilaa Microsoft Fabricissa. Lisätietoja T-SQL-kyselyiden suorittamisen työkaluista ja menetelmistä on kohdassa Kyselyn tekeminen varastosta.
Yhteyksien, istuntojen ja pyyntöjen valvonta kyselyjen elinkaaren DMV-tiedostoilla
Nykyiselle versiolle tarjotaan kolme dynaamista hallintanäkymää (DMV), jotta voit vastaanottaa reaaliaikaisia SQL-kyselyjen elinkaaren merkityksellisiä tietoja.
- sys.dm_exec_connections
- Palauttaa tietoja kustakin varaston ja moduulin välille muodosttamista yhteyksistä.
- sys.dm_exec_sessions
- Palauttaa tietoja kustakin istunnosta, joka on todennettu kohteen ja moduulin välillä.
- sys.dm_exec_requests
- Palauttaa tietoja jokaisesta istunnon aktiivisesta pyynnöstä.
Nämä kolme DMV-tiedostoa antavat yksityiskohtaisia tietoja seuraavista skenaarioista:
- Kuka käyttäjä suorittaa istuntoa?
- Milloin käyttäjä aloitti istunnon?
- Mikä on tietovarastoon ja sitä pyyntöä suorittavaan istuntoon liittyvän yhteyden tunnus?
- Kuinka monta kyselyä suoritetaan aktiivisesti?
- Mitkä kyselyt ovat pitkäkestoisia?
Tässä opetusohjelmassa opit valvomaan SQL-kyselyitä dynaamisten hallintanäkymien avulla.
DMV-esimerkkikyselyt
Seuraavassa esimerkissä etsitään kaikki parhaillaan suoritettavat sys.dm_exec_sessions
istunnot.
SELECT *
FROM sys.dm_exec_sessions;
Yhteyksien ja istuntojen välisen suhteen etsiminen
Seuraava esimerkki liittyy sys.dm_exec_connections
suhteeseen ja sys.dm_exec_sessions
aktiivisen istunnon väliseen suhteeseen tietyssä yhteydessä.
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;
Pitkäkestoisen kyselyn tunnistaminen ja tappaminen
Tämä ensimmäinen kysely tunnistaa pitkäkestoisten kyselyiden luettelon, jonka järjestyksessä kysely on kestänyt pisimpään sen saapumisen jälkeen.
SELECT request_id, session_id, start_time, total_elapsed_time
FROM sys.dm_exec_requests
WHERE status = 'running'
ORDER BY total_elapsed_time DESC;
Tämä toinen kysely näyttää, kuka käyttäjä suoritti istunnon, jossa on pitkäkestoinen kysely.
SELECT login_name
FROM sys.dm_exec_sessions
WHERE 'session_id' = 'SESSION_ID WITH LONG-RUNNING QUERY';
Tämä kolmas kysely näyttää, miten voit käyttää KILL-komentoa session_id
pitkäkestoisen kyselyn kanssa.
KILL 'SESSION_ID WITH LONG-RUNNING QUERY'
Esimerkiksi
KILL '101'
Oikeudet
- Järjestelmänvalvojalla on oikeudet suorittaa kaikki kolme DMV-tiedostoa (
sys.dm_exec_connections
,sys.dm_exec_sessions
,sys.dm_exec_requests
), jotta hän voi tarkastella omia ja muiden tietoja työtilassa. - Jäsen, osallistuja ja katselija voivat suorittaa
sys.dm_exec_sessions
jasys.dm_exec_requests
nähdä omia tuloksiaan varastossa, mutta heillä ei ole oikeuksia suorittaa -sovellustasys.dm_exec_connections
. - Vain järjestelmänvalvojalla on komennon suorittamisoikeus
KILL
.