powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
16 сообщений из 16, страница 1 из 1
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40009180
ssms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Пока такие попытки:

по plan_handle запросить аттибуты из sys.dm_exec_plan_attributes

В них есть:

user_id


int Значение «-2» означает, что представленный пакет не зависит от неявного разрешения имен и может совместно использоваться разными пользователями. Это является предпочтительным методом. Любое другое значение обозначает идентификатор пользователя, отправившего запрос к базе данных.



Но, он почему-то всегда равен 1, т.е. sa



А под sa на сервере вообще ничего не делается - приложжение под другим пользователем.




Подскажите, возможно ли как-то узнать пользователя, запрос которого попал в кэш? (sys.dm_exec_query_stats)
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40009202
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sa это вообще логин, а не юзер, он никак не отражен в плане.
a user_id в плане это совсем не user_id.

Erland Sommarskoglook at the attribute which is distinctive: user_id.
The name as such is a misnomer;
the value is the default schema for the users using this plan.
The dbo schema always has schema_id = 1.
...
And that is exactly what user_id = -2 means: there are no ambiguous object references in the query.
The corollary of this is that it is very much best practice to always use two-part notation in dynamic SQL,
no matter whether you create the dynamic SQL in a client program or in a stored procedure.
Slow in the Application, Fast in SSMS?
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40009206
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssms

Подскажите, возможно ли как-то узнать пользователя, запрос которого попал в кэш? (sys.dm_exec_query_stats)

конечно нельзя.
то представление вообще статистика.
я создаю план, запустив впервые запрос.
потом этот план юзают вообще все в этой базе.
и кому интересно, я или мой сосед впервые запустил сей запрос?
важны язык логина, формат даты, схема, но никак не имя "запустившего впервые".
поэтому в атрибутах это и хранится. схема_ид в том числе, не юзер
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40009225
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssms,

ищите пользователя в сеансах, а не в запросах. Сеанс может выполнять запрос, в свою очередь.
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40009231
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssms,

может раскажите в глобольном плане что пытаетесь строить?
а то возможно вы идите изначально в неверном направлении.
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40009234
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssms,

не забывайте, что: 1. кэш вымывается 2. не каждый запрос попадает в кэш.
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010098
ssms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123
ssms

Подскажите, возможно ли как-то узнать пользователя, запрос которого попал в кэш? (sys.dm_exec_query_stats)

конечно нельзя.
то представление вообще статистика.
я создаю план, запустив впервые запрос.
потом этот план юзают вообще все в этой базе.
и кому интересно, я или мой сосед впервые запустил сей запрос?
важны язык логина, формат даты, схема, но никак не имя "запустившего впервые".
поэтому в атрибутах это и хранится. схема_ид в том числе, не юзер


Спасибо за развернутый ответ.


Верно ли я понял что в dm_exec_query_stats, user_id - это id логина, впервые создавшего план?

Если это так, то это меня устроило бы.

Но пока довольно странный результат получается (
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010099
ssms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
ssms,

не забывайте, что: 1. кэш вымывается 2. не каждый запрос попадает в кэш.


Да, это я знаю.
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010100
ssms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
felix_ff
ssms,

может раскажите в глобольном плане что пытаетесь строить?
а то возможно вы идите изначально в неверном направлении.


Понять какие запросы больше всего нагружаю сервер на CPU.
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010112
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssms,

для этого надо организовать сбор данных 24/7 по событиям завершения запроса. Например, при помощи расширенных событий.
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010424
ssms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
ssms,

для этого надо организовать сбор данных 24/7 по событиям завершения запроса. Например, при помощи расширенных событий.



А если запрос выполняется 100500 раз и проц не сильно кадый раз нагрудает, а в сумме сильно?

Можно подробнее?
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010446
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssms,

для такого анализа обычно используется Query Store.


хотя помнится мне Александр Гладченко был им сильно недоволен в каком то топике.
да и я сам сталкивался с проблемами локов на базу от QS, хотя это было на достаточно древнем 2016-CU5/6, после этого выходило пару кумулятивок где вроде в описании писали что убирали негативное влияния QS, но я с того момента не тестировал.
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010451
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
felix_ff,

глючит этот Query store, то сам отключается, то снимки ломает. У меня неприятные впечатления от его использования...
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010459
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssms,

у версия сервера какая?
можете воспользоваться легковестным профилированием v2-v3 если версия позволяет, они хотябы не так сильно оказывают влияние на деградацию производительности.

v3 прям вообще конфетка, очень нравится.


https://docs.microsoft.com/ru-ru/sql/relational-databases/performance/query-profiling-infrastructure?view=sql-server-ver15
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010790
ssms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
felix_ff
ssms,

у версия сервера какая?
можете воспользоваться легковестным профилированием v2-v3 если версия позволяет, они хотябы не так сильно оказывают влияние на деградацию производительности.

v3 прям вообще конфетка, очень нравится.


https://docs.microsoft.com/ru-ru/sql/relational-databases/performance/query-profiling-infrastructure?view=sql-server-ver15


И что это даст?
...
Рейтинг: 0 / 0
Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
    #40010794
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ssms,

настраиваете xevent сессию - получаете актуальные планы.
потом подсчитываете агрегатом затраченное время по cpu_time, профит
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Можно ли вытащить имя пользователя из sys.dm_exec_query_stats?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]