sys.dm_exec_connections (Transact-SQL)

Si applica a: sìSQL Server (tutte le versioni supportate) Sìdatabase SQL di Azure sìAzure Synapse Analytics

Restituisce informazioni sulle connessioni stabilite per questa istanza di SQL Server e i dettagli di ogni connessione. Restituisce informazioni di connessione a livello di server per SQL Server. Restituisce le informazioni di connessione al database correnti per database SQL.

Nota

Per chiamare questo metodo dal pool SQL dedicato in Azure Synapse Analytics o Piattaforma di strumenti analitici (PDW), vedere sys.dm_pdw_exec_connections (Transact-SQL). Per i pool SQL serverless usare sys.dm_exec_connections.

Nome colonna Tipo di dati Descrizione
session_id int Identifica la sessione associata alla connessione Ammette i valori Null.
most_recent_session_id int Rappresenta l'ID di sessione della richiesta più recente associata alla connessione. Le connessioni SOAP possono essere riutilizzate da un'altra sessione. Ammette valori Null.
connect_time datetime Timestamp relativo al momento in cui è stata stabilita la connessione. Non ammette i valori Null.
net_transport nvarchar(40) Restituisce sempre Session quando per una connessione sono abilitati più set di risultati attivi (MARS).

Nota: Descrive il protocollo di trasporto fisico utilizzato da questa connessione. Non ammette i valori Null.
protocol_type nvarchar(40) Specifica il tipo di protocollo del payload. Attualmente distingue tra TDS ("TSQL"), "SOAP" e "Mirroring del database". Ammette i valori Null.
protocol_version int Versione del protocollo di accesso ai dati associato a questa connessione. Ammette i valori Null.
endpoint_id int Identificatore che descrive il tipo di connessione. Il valore di endpoint_id può essere utilizzato per eseguire query nella vista sys.endpoints. Ammette i valori Null.
encrypt_option nvarchar(40) Valore booleano che specifica se per la connessione è abilitata la crittografia. Non ammette i valori Null.
auth_scheme nvarchar(40) Specifica lo schema di SQL Server/Autenticazione di Windows utilizzato con questa connessione. Non ammette i valori Null.
node_affinity smallint Identifica il nodo di memoria con cui la connessione dispone di affinità. Non ammette i valori Null.
num_reads int Numero di operazioni di lettura in byte che si sono verificate su questa connessione. Ammette i valori Null.
num_writes int Numero di scritture in byte che si sono verificate su questa connessione. Ammette i valori Null.
last_read datetime Timestamp dell'ultima lettura eseguita sulla connessione. Ammette i valori Null.
last_write datetime Timestamp dell'ultima scrittura eseguita sulla connessione. Non ammette valori Null.
net_packet_size int Dimensioni dei pacchetti di rete utilizzate per il trasferimento di informazioni e dati. Ammette i valori Null.
client_net_address varchar(48) Indirizzo host del client che si connette al server. Ammette i valori Null.

Prima di V12 in database SQL di Azure, questa colonna restituisce sempre NULL.
client_tcp_port int Numero di porta del computer client associato alla connessione. Ammette i valori Null.

In database SQL di Azure questa colonna restituisce sempre un valore NULL.
local_net_address varchar(48) Rappresenta l'indirizzo IP del server di destinazione della connessione. Disponibile solo per le connessioni che utilizzano il provider del trasporto TCP. Ammette i valori Null.

In database SQL di Azure questa colonna restituisce sempre un valore NULL.
local_tcp_port int Rappresenta la porta TCP del server che verrebbe impiegata in caso di utilizzo del trasporto TCP per la connessione. Ammette i valori Null.

In database SQL di Azure questa colonna restituisce sempre un valore NULL.
connection_id uniqueidentifier Identifica in modo univoco ogni connessione. Non ammette i valori Null.
parent_connection_id uniqueidentifier Identifica la connessione primaria utilizzata dalla sessione MARS. Ammette i valori Null.
most_recent_sql_handle varbinary(64) Handle SQL dell'ultima richiesta eseguita sulla connessione. La colonna most_recent_sql_handle è sempre sincronizzata con la colonna most_recent_session_id. Ammette i valori Null.
pdw_node_id int Si applica a: Azure Synapse Analytics, Piattaforma di strumenti analitici (PDW)

Identificatore del nodo in cui si trova la distribuzione.

Autorizzazioni

In SQL Server e in SQL Istanza gestita è richiesta l'autorizzazione VIEW SERVER STATE .

Negli database SQL di servizio Basic, S0 e S1 e per i database nei pool elastici è necessario l'account amministratore del server, l'account ##MS_ServerStateReader## amministratore di Azure Active Directory o l'appartenenza al ruolo del server. In tutti gli altri database SQL di servizio, è necessaria l'autorizzazione VIEW DATABASE STATE per il database o l'appartenenza al ##MS_ServerStateReader## ruolo del server.

Join fisici

Join per sys.dm_exec_connections

Cardinalità delle relazioni

Primo elemento Secondo elemento Relazione
dm_exec_sessions.session_id dm_exec_connections.session_id Uno-a-uno
dm_exec_requests.connection_id dm_exec_connections.connection_id Molti-a-uno
dm_broker_connections.connection_id dm_exec_connections.connection_id Uno-a-uno

Esempio

Query tipica per raccogliere informazioni su una connessione query personalizzata.

SELECT   
    c.session_id, c.net_transport, c.encrypt_option,   
    c.auth_scheme, s.host_name, s.program_name,   
    s.client_interface_name, s.login_name, s.nt_domain,   
    s.nt_user_name, s.original_login_name, c.connect_time,   
    s.login_time   
FROM sys.dm_exec_connections AS c  
JOIN sys.dm_exec_sessions AS s  
    ON c.session_id = s.session_id  
WHERE c.session_id = @@SPID;  

Vedere anche

Funzioni e viste a gestione dinamica relative all'esecuzione (Transact-SQL)