Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 системная вьюха  [new]
dimakz
Member

Откуда:
Сообщений: 1574
добрый день, где можно посмотреть в логах или системных вьюхах,
какие sql запросы задавались пользователями, такие как:
select
update
delete
insert ??
4 июн 12, 15:22    [12662272]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Если до "задавания запросов" Вы не выполняли трассировку с помощью профайлера, то нигде.

Сообщение было отредактировано: 4 июн 12, 15:25
4 июн 12, 15:25    [12662298]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
gang
Member

Откуда:
Сообщений: 1394
Если Вам для статистики "какие запросы, с какой интенсивностью работают с БД", то можно посмотреть
sys.dm_exec_query_stats s
CROSS APPLY sys.dm_exec_sql_text(s.sql_handle)st 
Если же задача состоит в аудите кто\что\когда запросил\изменил, то в общем случае ответ предложенный pkarklin. Возможны варианты с аудитами, но порядок приведенный pkarklin при этом не меняется: сначала настройка, потом разбор собранного.
4 июн 12, 16:51    [12663072]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
dimakz
Member

Откуда:
Сообщений: 1574
а где можно посмотреть включена ли была трассировка?
23 авг 12, 12:32    [13054579]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
dimakz
Member

Откуда:
Сообщений: 1574
sys.dm_exec_query_stats s
CROSS APPLY sys.dm_exec_sql_text(s.sql_handle)st


Msg 2809, Level 18, State 1, Line 1
The request for procedure 'dm_exec_query_stats' failed because 'dm_exec_query_stats' is a view object.

ошибку выдал
23 авг 12, 12:38    [13054618]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
dimakz
sys.dm_exec_query_stats s
CROSS APPLY sys.dm_exec_sql_text(s.sql_handle)st


Msg 2809, Level 18, State 1, Line 1
The request for procedure 'dm_exec_query_stats' failed because 'dm_exec_query_stats' is a view object.

ошибку выдал


А вы какой запрос запускаете?
23 авг 12, 12:44    [13054671]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
офигеть
Guest
dimakz,
select *
from sys.dm_exec_query_stats s
CROSS APPLY sys.dm_exec_sql_text(s.sql_handle)st


нефиг вьюшки как процедуры запускать, из них селектить надо
23 авг 12, 12:46    [13054693]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
dimakz
Member

Откуда:
Сообщений: 1574
SELECT *
  FROM [msdb].[sys].[dm_exec_query_stats]


разве тут нельзя посмотреть запросы?
23 авг 12, 12:54    [13054756]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
dimakz
Member

Откуда:
Сообщений: 1574
все разобрался..
подскажите плиз какая инфа сыпится sys.dm_exec_query_stats ??????????????
почему некоторые запросы туда попадают? а некоторые нет
23 авг 12, 13:50    [13055293]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
dimakz
Member

Откуда:
Сообщений: 1574
там в основном креате процедуре попадает
23 авг 12, 13:52    [13055321]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
dimakz
все разобрался..
подскажите плиз какая инфа сыпится sys.dm_exec_query_stats ??????????????
почему некоторые запросы туда попадают? а некоторые нет


Зайдите в BOL.
Введите в поиске sys.dm_exec_query_stats.
Прочитайте описание.
23 авг 12, 15:12    [13055822]     Ответить | Цитировать Сообщить модератору
 Re: системная вьюха  [new]
gang
Member

Откуда:
Сообщений: 1394
Это не креате процедуре. Это определения проц-р в составе которых были выполнявшиеся запросы. Для получения самих запросов из текстов проц-р на них нужно наложить смещение в соответствии с statement_start_offset, statement_end_offset.
какая инфа сыпится sys.dm_exec_query_stats?
После прочтения документации вопросов должно стать меньше.
Вот пример селекта:
select object_name(st.objectid) AS 'SP_Name', SUBSTRING (st.text, 
             s.statement_start_offset/2,
	(CASE WHEN s.statement_end_offset = -1
	       THEN LEN(CONVERT(NVARCHAR(MAX), st.text)) * 2
		ELSE s.statement_end_offset END - 
   s.statement_start_offset)/2) query_statement ,qp.query_plan
, s.* 
from sys.dm_exec_query_stats (nolock) s
CROSS APPLY sys.dm_exec_sql_text(s.sql_handle)st 
CROSS APPLY sys.dm_exec_query_plan(s.plan_handle)qp

Обычно статистику из dm_exec_query_stats используют с фильтрами. Например TOP N по к-либо показателю (длительность, IO, CPU и т.п.).
Можно также нафильтровать статистику по конкретной проц-ре, определенной части кода в запросе и т.п.
23 авг 12, 15:17    [13055850]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить