Как посмотреть историю запросов MS SQL: простой способ их отслеживания
Чтобы посмотреть историю запросов в MS SQL, вы можете использовать системную таблицу sys.dm_exec_query_stats. Эта таблица содержит информацию о выполненных запросах и их статистике.
Вот пример запроса, который позволяет увидеть историю запросов:
SELECT
qs.creation_time AS [Время создания],
SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
((CASE qs.statement_end_offset
WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset END
- qs.statement_start_offset)/2) + 1) AS [Текст запроса],
qs.execution_count AS [Количество выполнений],
qs.total_worker_time AS [Общее время выполнения (в микросекундах)],
qs.total_elapsed_time AS [Общее затраченное время (в микросекундах)],
qs.total_logical_reads AS [Общее количество логических операций чтения]
FROM
sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st
ORDER BY
qs.creation_time DESC;
Детальный ответ
Как посмотреть историю запросов MS SQL
MS SQL Server предлагает инструменты, которые позволяют просматривать историю выполненных запросов. В этой статье я расскажу о двух основных способах, которые вы можете использовать, чтобы получить доступ к истории запросов в MS SQL.
1. Использование SQL Server Management Studio (SSMS)
SQL Server Management Studio (SSMS) - это интегрированная среда разработки для работы с MS SQL Server. Она предоставляет широкие возможности для администрирования баз данных, включая просмотр истории запросов.
Чтобы посмотреть историю запросов с помощью SSMS, выполните следующие шаги:
- Откройте SQL Server Management Studio и подключитесь к серверу базы данных.
- В верхней панели навигации выберите пункт меню "Вид" и перейдите в "SQL Server журналы".
- В появившемся окне выберите "Журнал запросов".
- Выберите период, за который вы хотите просмотреть историю запросов, например, "Последний час" или "Все журналы".
- Нажмите кнопку "Просмотреть", чтобы отобразить историю запросов.
SSMS отобразит список выполненных запросов в выбранном периоде, включая текст запросов, время выполнения и другую полезную информацию.
2. Использование системного каталога MS SQL
Второй способ просмотра истории запросов в MS SQL - использование системного каталога. MS SQL хранит информацию о выполненных запросах в системной таблице "sys.dm_exec_query_stats". Вы можете написать SQL-запрос, чтобы получить доступ к этой таблице и получить всю необходимую информацию.
Ниже приведен пример SQL-запроса, который возвращает историю последних 10 выполненных запросов в базе данных:
SELECT TOP 10
qs.creation_time,
SUBSTRING(st.text, (qs.statement_start_offset/2)+1, ((CASE WHEN qs.statement_end_offset = -1 THEN LEN(CONVERT(NVARCHAR(MAX), st.text)) * 2 ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) + 1) AS statement_text,
qs.total_logical_reads,
qs.total_elapsed_time
FROM
sys.dm_exec_query_stats qs
CROSS APPLY
sys.dm_exec_sql_text(qs.sql_handle) st
ORDER BY
qs.creation_time DESC;
Этот запрос возвращает следующую информацию для каждого выполненного запроса: время создания запроса, текст запроса, количество логических операций чтения и общее время выполнения запроса.
Заключение
Просмотр истории запросов в MS SQL может быть полезным для отладки и оптимизации вашей базы данных. Вы можете использовать SQL Server Management Studio или написать SQL-запрос для получения доступа к истории запросов в системном каталоге. Оба способа предоставляют информацию, которая может помочь вам в понимании и улучшении производительности вашей базы данных.