Трасування SQL Server на основі клієнтського порту TCP


9

У мене є термінальний сервер Windows з багатьма різними користувачами, які входять через RDP для запуску програми. Додаток здійснює одне або більше підключень на користувача до екземпляра SQL Server 2008 R2. Усі користувачі отримують доступ до однієї бази даних за допомогою одного і того ж входу в SQL. Я хотів би мати можливість відстежувати сеанс SQL конкретного користувача, але я не знайшов способу визначити, який сеанс SQL належить до якого користувача. Однак я можу визначити вихідний TCP-порт, який використовує кожен екземпляр програми.

Чи є спосіб відстежити сеанс SQL на основі порту TCP клієнта?

Відповіді:


10

Чи є спосіб відстежити сеанс SQL на основі порту TCP клієнта?

Так. Ви можете запитувати sys.dm_exec_connections, щоб ідентифікувати сеанс з порту (стовпця client_tcp_port) клієнта .

Наприклад:

SELECT DEC.session_id
FROM sys.dm_exec_connections AS DEC
WHERE DEC.client_net_address = '192.168.0.100'
AND DEC.client_tcp_port = 63465;
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.