Partager via


Sessions utilisateur dans le système de plateforme Analytics

Une connexion avec les autorisations appropriées peut gérer les sessions de toutes les connexions sur une appliance SQL Server PDW, notamment l’exécution de ces actions :

  • Affichez les sessions actuelles sur l’appliance, y compris les sessions actives et inactives.
  • Affichez les requêtes actives et récentes pour une session.
  • Terminez les sessions actives.

Ces actions peuvent être effectuées à l’aide du moniteur de l’appliance à l’aide de la console Administration ou des vues système via des commandes SQL, comme indiqué ci-dessous.

Les autorisations requises pour gérer les sessions à l’aide de l’une ou l’autre méthode sont identiques et sont décrites dans Accorder des autorisations pour gérer les connexions, les utilisateurs et les rôles de base de données.

Gérer les sessions à l’aide de la console Administration

Pour afficher les sessions actuelles à l’aide de la console Administration

  1. Dans le menu supérieur, cliquez sur Sessions.

  2. La liste résultante affiche toutes les sessions récentes. Pour afficher uniquement les sessions « Active » ou « Inactive », cliquez sur l’en-tête de colonne Status pour trier les résultats par état.

Pour afficher les requêtes actives et récentes d’une session à l’aide de la console Administration

  1. Dans le menu supérieur, cliquez sur Sessions.

  2. Dans la liste des résultats, cliquez sur l’ID de session de la session souhaitée.

  3. La liste des requêtes résultantes affiche les requêtes récentes pour la session. Pour plus d’informations sur l’affichage des détails de la requête, consultez Surveillance des requêtes actives.

Pour mettre fin aux sessions à l’aide de la console Administration

  1. Dans le menu supérieur, cliquez sur Sessions.

  2. Recherchez l’ID de session de la session à annuler.

  3. Cliquez sur le X rouge à gauche de l’ID de session pour mettre fin à la session. Seules les sessions avec l’état « Actif » ou « Inactif » auront un X rouge ; seules ces sessions peuvent être terminées.

Gérer les sessions à l’aide des vues système et des commandes SQL

Pour afficher les sessions actuelles à l’aide des vues système

Utilisez sys.dm_pdw_exec_sessions pour générer une liste de sessions actuelles.

Cet exemple retourne les session_id, les login_name et l’état de toutes les sessions avec l’état « Actif » ou « Inactif ».

SELECT session_id, login_name, status FROM sys.dm_pdw_exec_sessions WHERE status='Active' OR status='Idle';  

Pour afficher les requêtes actives et récentes pour une session à l’aide des vues système

Pour afficher les requêtes actives et récemment terminées associées à une session, vous utilisez les vues sys.dm_pdw_exec_sessions et sys.dm_pdw_exec_requests . Cette requête retourne une liste de toutes les sessions actives ou inactives, ainsi que toutes les requêtes actives ou récentes associées à chaque ID de session.

SELECT es.session_id, es.login_name, es.status AS sessionStatus,   
er.request_id, er.status AS requestStatus, er.command   
FROM sys.dm_pdw_exec_sessions es   
LEFT OUTER JOIN sys.dm_pdw_exec_requests er   
ON (es.session_id=er.session_id)   
WHERE (es.status='Active' OR es.status='Idle') AND   
(er.status!= 'Completed' AND er.status!= 'Failed' AND er.status!= 'Cancelled');  

Pour mettre fin aux sessions à l’aide de commandes SQL

Utilisez la commande KILL pour mettre fin à une session active. Vous aurez besoin de l’ID de session pour que le processus se termine, qui peut être obtenu à l’aide de la vue sys.dm_pdw_exec_sessions .

Dans cet exemple, sélectionnez les valeurs login_name, session_id et d’état pour rechercher une session en fonction du nom de connexion.

SELECT session_id, login_name, status FROM sys.dm_pdw_exec_sessions;  

Les sessions avec un état « Actif » ou « Inactif » peuvent être terminées à l’aide de la commande KILL.

KILL 'SID137';