sys.dm_exec_sessions (Transact-SQL)
Kimliği doğrulanmış oturum başına bir satır döndürüyor SQL Server.sys.dm_exec_sessionstüm etkin kullanıcı bağlantıları ve iç görevleriyle ilgili bilgileri gösteren bir server -kapsam görünümüdür.Bu bilgiler, istemcisürüm, istemci program adı, istemci oturum açma saat, oturum açma kullanıcı, geçerli oturum ayarı ve daha içerir. Use sys.dm_exec_sessions İlk Görünüm geçerli sistem yük için bir ' % s'oturumu oturum ilgi, tanımlamak ve sonra da diğer dinamik yönetimi görünümler ve kullanarak oturum hakkında daha fazla bilgi'ı öğrenindinamik yönetimi işlevlerini.
sys.dm_exec_connections, sys.dm_exec_sessions, Ve sys.dm_exec_requests dinamik yönetimi görünümleri eşlemek için sys.sysprocessessistem tablosu.
Sütun adı |
Veri türü |
Açıklama |
---|---|---|
session_id |
smallint |
Her etkin birincil bağlantıyla ilişkili oturum tanımlar.Nullable değil. |
login_time |
datetime |
Ne zaman oturum başlatıldığından zaman.Nullable değil. |
host_name |
nvarchar(128) |
Bir oturumözgü istemciiş istasyonu adı. İç oturumları için null değerdir.NULL olur. |
program_name |
nvarchar(128) |
oturumbaşlatan istemci programının adı.İç oturumları için null değerdir.NULL olur. |
host_process_id |
int |
' % S'oturumunu oturumbaşlatan istemci programının işlem kimliği.İç oturumları için null değerdir.NULL olur. |
client_version |
int |
TDSprotokolsürüm istemci sunucuya bağlanmak için kullanılan arabirim . İç oturumları için null değerdir.NULL olur. |
client_interface_name |
nvarchar(32) |
istemci sunucuya bağlanmak için kullanılan iletişim kuralı adı.İç oturumları için null değerdir.NULL olur. |
security_id |
varbinary(85) |
Microsoft Windows güvenlik kimliği oturum açma ile ilişkili.Nullable değil. |
login_name |
nvarchar(128) |
SQL Serveroturum açma adı altında oturum yürütülüyor.' % S'oturumu oturumoluşturduğunuz özgün oturum açma adı, bkz: original_login_name.Olabilir bir SQL Server kimliği doğrulanmış oturum açma adı veya bir Windows kimliği doğrulanmış etki alanı kullanıcı adı.Nullable değil. |
nt_domain |
nvarchar(128) |
' % S'oturumu oturum Windows kimlik doğrulaması veya güvenilir bağlantıkullanıyorsa, istemci için Windows etki alanı .Bu değer null iç oturumları ve olmayan-etki alanı users.NULL olur. |
nt_user_name |
nvarchar(128) |
' % S'oturumu oturum Windows kimlik doğrulaması veya güvenilir bağlantıkullanıyorsa, istemci için Windows kullanıcı adı.Bu değer null iç oturumları ve olmayan-etki alanı users.NULL olur. |
status |
nvarchar(30) |
oturumdurumu.Olası değerler:
Nullable değil. |
context_info |
varbinary(128) |
CONTEXT_INFO değerini oturum.Kullanarak bağlam bilgilerini küme kullanıcı tarafından olup set context_info deyim.NULL olur. |
cpu_time |
int |
Bu oturumtarafından kullanılan cpu saatmilisaniye cinsinden.Nullable değil. |
memory_usage |
int |
Bu oturumtarafından kullanılan bellek 8 kb sayfa sayısı.Nullable değil. |
total_scheduled_time |
int |
Toplam saatiçin oturum (istek içinde) zamanlanmış yürütme için milisaniye olarak.Nullable değil. |
total_elapsed_time |
int |
oturum başlatıldığından beri milisaniye cinsinden süre.Nullable değil. |
endpoint_id |
int |
' % S'oturum oturumile ilişkili bitiş noktası kimliği.Nullable değil. |
last_request_start_time |
datetime |
Son oturum istek süresi başladı.Şu anda yürütülen istek de buna dahildir.Nullable değil. |
last_request_end_time |
datetime |
' % S'oturumdaki oturumisteği son tamamlanma saati.NULL olur. |
reads |
bigint |
Okuma sayısı, bu oturum, istekleri bu ' % s'oturumu oturumsırasında gerçekleştirdiği.Nullable değil. |
writes |
bigint |
Yazma sayısı, bu oturum, istekleri bu ' % s'oturumu oturumsırasında gerçekleştirdiği.Nullable değil. |
logical_reads |
bigint |
oturumsırasında gerçekleştirilen mantıksal okuma sayısı.Nullable değil. |
is_user_process |
bit |
' % s'oturumu oturum sistem oturumise 0.Aksi takdirde, 1'dir.Nullable değil. |
text_size |
int |
oturumayarı metin BOYUTU.Nullable değil. |
language |
nvarchar(128) |
DİL ayarı oturum.NULL olur. |
date_format |
nvarchar(3) |
oturumayarı VBLONGDATE.NULL olur. |
date_first |
smallint |
oturumayarı DATEFIRST.Nullable değil. |
quoted_identifier |
bit |
QUOTED_IDENTIFIER ayarı oturum.Nullable değil. |
arithabort |
bit |
ARITHABORT ayarı oturum.Nullable değil. |
ansi_null_dflt_on |
bit |
' % S'oturumu oturumANSI_NULL_DFLT_OFF ayarı.Nullable değil. |
ansi_defaults |
bit |
oturumayarı ANSI_DEFAULTS.Nullable değil. |
ansi_warnings |
bit |
ANSI_WARNINGS ayarı oturum.Nullable değil. |
ansi_padding |
bit |
ANSI_PADDING ayarı oturum.Nullable değil. |
ansi_nulls |
bit |
' % S'oturumu oturumiçin ANSI_NULLS ayarı.Nullable değil. |
concat_null_yields_null |
bit |
CONCAT_NULL_YIELDS_NULL ayarı oturum.Nullable değil. |
transaction_isolation_level |
smallint |
oturumişlem yalıtım düzeyi . 0 = Belirtilmemiş 1 ReadUncomitted = 2 ReadCommitted = 3 Repeatable = 4 = Serializable 5 = Anlık görüntü Nullable değil. |
lock_timeout |
int |
oturumayarı LOCK_TIMEOUT.Milisaniye cinsinden değeridir.Nullable değil. |
deadlock_priority |
int |
oturumayarı DEADLOCK_PRIORITY.Nullable değil. |
row_count |
bigint |
' % S'oturumdaki oturum bu pencereden döndürülen satır sayısı.Nullable değil. |
prev_error |
int |
oturumdöndürülen son hata kodu.Nullable değil. |
original_security_id |
varbinary(85) |
MicrosoftWindows güvenlik kimliği ile ilişkili original_login_name.Nullable değil. |
original_login_name |
nvarchar(128) |
SQL Serveristemci bu oturumoluşturmak için kullanılan oturum açma adı.Olabilir bir SQL Server kimliği doğrulanmış oturum açma adı veya bir Windows kimliği doğrulanmış etki alanı kullanıcı adı.oturum birçok açık veya kapalı İçerik Geçişi ilk bağlantıdan sonra gitti olduğunu unutmayın.Örneğin, execute as kullanılır.Nullable değil. |
last_successful_logon |
datetime |
Son başarılı oturum açma için zaman original_login_name Geçerli oturum başlatmadan önce. |
last_unsuccessful_logon |
datetime |
Son başarısız oturum açma girişimi için zaman original_login_name Geçerli oturum başlatmadan önce. |
unsuccessful_logons |
bigint |
Sayıda başarısız oturum açma girişimleri için original_login_name arasında last_successful_logon ve login_time. |
group_id |
int |
Bu oturum ait olduğu iş yükü grubu kimliği.Nullable değil. |
İzinler
Sunucu üzerindeki görünüm server state izni gerektirir.
Not
Kullanıcı sunucuda görünüm server state izni varsa, kullanıcı örnek üzerinde yürütülen tüm oturumları görmek SQL Server; Aksi durumda, kullanıcı yalnızca geçerli oturumgörürsünüz.
Açıklamalar
Ortak Ölçütler Uyumluluğu için oturum açma istatistikleri
Zaman Ortak Ölçütler Uyumluluğu etkin seçeneği etkin saklı yordamkullanarak sp_configure, oturum açma istatistiklerini depolanan ve aşağıdaki sütunlarında görüntülenen sys.dm_exec_sessions:
last_successful_logon
last_unsuccessful_logon
unsuccessful_logons
Bu sunucu yapılandırma seçeneği etkinse, bu sys.dm_exec_sessions Sütunlar döndürür null değerleri.küme hakkında daha fazla bilgi için bu sunucu yapılandırma seçeneği görmek Ortak Ölçütler Uyumluluğu seçeneği etkinleştirildi.
İlişki Cardinalities
Dan |
Amacı |
Üzerinde / Apply |
İlişki |
---|---|---|---|
sys.dm_exec_sessions |
sys.dm_exec_requests |
session_id |
Bir sıfır ya da bir çok |
sys.dm_exec_sessions |
sys.dm_exec_connections |
session_id |
Bir sıfır ya da bir çok |
sys.dm_exec_sessions |
sys.dm_tran_session_transactions |
session_id |
Bir sıfır ya da bir çok |
sys.dm_exec_sessions |
sys.dm_exec_cursors(session_id | 0) |
session_idÇAPRAZ UYGULA DIŞ UYGULA |
Bir sıfır ya da bir çok |
sys.dm_exec_sessions |
sys.dm_db_session_space_usage |
session_id |
Bire bir |
Örnekler
A.Sunucuya bağlı kullanıcıları bulma
Aşağıdaki örnek, sunucuya bağlı kullanıcıları bulur ve her kullanıcı için oturum sayısını döndürür.
SELECT login_name ,COUNT(session_id) AS session_count
FROM sys.dm_exec_sessions
GROUP BY login_name;
B.Bulma uzun süre çalışan İmleçler
Aşağıdaki örnek imleçler bulunan birden çok imleçler oluşturan saatbelirli bir süre ve hangi oturum açık olan imleçler bulur.
USE master;
GO
SELECT creation_time ,cursor_id
,name ,c.session_id ,login_name
FROM sys.dm_exec_cursors(0) AS c
JOIN sys.dm_exec_sessions AS s
ON c.session_id = s.session_id
WHERE DATEDIFF(mi, c.creation_time, GETDATE()) > 5;
C.Açık hareketlerin boştaki oturumlar bulma
Aşağıdaki örnek olan oturumları açık hareketleri ve boşta bulur.Boş oturum şu anda çalışan hiçbir isteği olan biridir.
SELECT s.*
FROM sys.dm_exec_sessions AS s
WHERE EXISTS
(
SELECT *
FROM sys.dm_tran_session_transactions AS t
WHERE t.session_id = s.session_id
)
AND NOT EXISTS
(
SELECT *
FROM sys.dm_exec_requests AS r
WHERE r.session_id = s.session_id
);