Memantau koneksi, sesi, dan permintaan menggunakan DMV
Berlaku untuk:✅ Titik akhir analitik SQL dan Gudang di Microsoft Fabric
Anda dapat menggunakan tampilan manajemen dinamis (DMV) yang ada untuk memantau koneksi, sesi, dan status permintaan di Microsoft Fabric. Untuk informasi selengkapnya tentang alat dan metode menjalankan kueri T-SQL, lihat Mengkueri Gudang.
Cara memantau koneksi, sesi, dan permintaan menggunakan DMV siklus hidup kueri
Untuk versi saat ini, ada tiga tampilan manajemen dinamis (DMV) yang disediakan bagi Anda untuk menerima wawasan siklus hidup kueri SQL langsung.
- sys.dm_exec_connections
- Mengembalikan informasi tentang setiap koneksi yang dibuat antara gudang dan mesin.
- sys.dm_exec_sessions
- Mengembalikan informasi tentang setiap sesi yang diautentikasi antara item dan mesin.
- sys.dm_exec_requests
- Mengembalikan informasi tentang setiap permintaan aktif dalam sesi.
Ketiga DMV ini memberikan wawasan terperinci tentang skenario berikut:
- Siapa pengguna yang menjalankan sesi?
- Kapan sesi dimulai oleh pengguna?
- Apa ID koneksi ke Gudang data dan sesi yang menjalankan permintaan?
- Berapa banyak kueri yang berjalan secara aktif?
- Kueri mana yang berjalan lama?
Dalam tutorial ini, pelajari cara memantau kueri SQL yang sedang berjalan menggunakan tampilan manajemen dinamis (DMV).
Contoh kueri DMV
Contoh kueri sys.dm_exec_sessions
berikut untuk menemukan semua sesi yang sedang dijalankan.
SELECT *
FROM sys.dm_exec_sessions;
Menemukan hubungan antara koneksi dan sesi
Contoh berikut bergabung sys.dm_exec_connections
dan sys.dm_exec_sessions
ke hubungan antara sesi aktif dalam koneksi tertentu.
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;
Mengidentifikasi dan MEMBUNUH kueri yang berjalan lama
Kueri pertama ini mengidentifikasi daftar kueri yang berjalan lama dalam urutan kueri mana yang telah mengambil waktu terpanjang sejak tiba.
SELECT request_id, session_id, start_time, total_elapsed_time
FROM sys.dm_exec_requests
WHERE status = 'running'
ORDER BY total_elapsed_time DESC;
Kueri kedua ini memperlihatkan pengguna mana yang menjalankan sesi yang memiliki kueri yang berjalan lama.
SELECT login_name
FROM sys.dm_exec_sessions
WHERE 'session_id' = 'SESSION_ID WITH LONG-RUNNING QUERY';
Kueri ketiga ini memperlihatkan cara menggunakan perintah KILL pada session_id
dengan kueri yang berjalan lama.
KILL 'SESSION_ID WITH LONG-RUNNING QUERY'
Misalnya
KILL '101'
Izin
- Admin memiliki izin untuk menjalankan ketiga DMV (
sys.dm_exec_connections
,sys.dm_exec_sessions
,sys.dm_exec_requests
) untuk melihat informasi mereka sendiri dan orang lain dalam ruang kerja. - Anggota, Kontributor, dan Penampil dapat menjalankan
sys.dm_exec_sessions
dansys.dm_exec_requests
melihat hasil mereka sendiri dalam gudang, tetapi tidak memiliki izin untuk menjalankansys.dm_exec_connections
. - Hanya Admin yang memiliki izin untuk menjalankan
KILL
perintah.