SQL性能调优
有什么方法可以在特定时间点找到长时间运行的查询吗?这是一个查询,您可以使用它来查找哪些查询正在运行且占用更多时间SQL性能调优,sql,Sql,有什么方法可以在特定时间点找到长时间运行的查询吗?这是一个查询,您可以使用它来查找哪些查询正在运行且占用更多时间 SELECT TOP 10 SUBSTRING(qt.TEXT, (qs.statement_start_offset/2)+1, ((CASE qs.statement_end_offset WHEN -1 THEN DATALENGTH(qt.TEXT) ELSE qs.statement_end_offset END - qs.statemen
SELECT TOP 10 SUBSTRING(qt.TEXT, (qs.statement_start_offset/2)+1,
((CASE qs.statement_end_offset
WHEN -1 THEN DATALENGTH(qt.TEXT)
ELSE qs.statement_end_offset
END - qs.statement_start_offset)/2)+1),
qs.execution_count,
qs.total_logical_reads, qs.last_logical_reads,
qs.total_logical_writes, qs.last_logical_writes,
qs.total_worker_time,
qs.last_worker_time,
qs.total_elapsed_time/1000000 total_elapsed_time_in_S,
qs.last_elapsed_time/1000000 last_elapsed_time_in_S,
qs.last_execution_time,
qp.query_plan
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) qt
CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) qp
ORDER BY qs.total_logical_reads DESC -- logical reads
-- ORDER BY qs.total_logical_writes DESC -- logical writes
-- ORDER BY qs.total_worker_time DESC -- CPU time
这将是查询结果:
另请参阅此链接:
用于MySQL或Maria DB。基本上你可以使用这个查询
SELECT * FROM INFORMATION_SHEMA.PROCESSLIST WHERE time > ** choose time in seconds **
欢迎来到StackOverflow!请阅读相关信息以及如何给出建议。这将使其他人更容易帮助您。对于本网站上的哪个RDMS作为SQL标记意味着ANSI/ISO SQL标准。您使用的是哪种产品?“SQL”只是一种查询语言,而不是特定数据库产品的名称。请查看您正在使用的数据库产品
postgresql
,oracle
,sqlserver
,db2
,…我们没有;我不知道我们谈论的是哪种关系数据库。