sqlserver历史执行记录怎么查询
要查询SQL Server的历史执行记录,可以使用以下方法:
- 使用动态管理视图sys.dm_exec_query_stats:这个视图提供了有关过去执行的查询的信息,包括查询文本、执行次数、平均执行时间等。可以按照执行时间、CPU时间、逻辑读取等指标进行排序和过滤。
SELECT
creation_time,
last_execution_time,
total_logical_reads,
total_elapsed_time,
execution_count,
st.text
FROM
sys.dm_exec_query_stats AS qs
CROSS APPLY
sys.dm_exec_sql_text(qs.sql_handle) AS st
ORDER BY
last_execution_time DESC
-
使用SQL Server Profiler:Profiler是一个强大的工具,可以用于监视和分析SQL Server的活动。可以设置跟踪会话来捕获执行的查询,并查看它们的历史记录。
-
使用Extended Events:Extended Events是SQL Server的事件处理程序,可以捕获和分析SQL Server引擎的活动。使用Extended Events,可以创建事件会话来捕获执行的查询,并查看它们的历史记录。
CREATE EVENT SESSION QueryHistory
ON SERVER
ADD EVENT sqlserver.sql_statement_completed
(
ACTION (sqlserver.sql_text)
)
ADD TARGET package0.event_file
(
SET filename = 'C:\Path\To\QueryHistory.xel'
)
WITH
(
MAX_MEMORY = 4096 KB,
EVENT_RETENTION_MODE = ALLOW_SINGLE_EVENT_LOSS
);
- 使用第三方工具:还有一些第三方工具可以帮助查询SQL Server的历史执行记录,如SQL Server Management Studio、Idera SQL Diagnostic Manager等。
无论你选择哪种方法,都可以根据需求选择适合的查询方式,并根据查询结果进行进一步分析。
版权声明
本文仅代表作者观点,不代表米安网络立场。
上一篇:c++迭代器失效的原因有哪些 下一篇:k8s拉取镜像失败的原因有哪些
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。