对于DBA来说,经常要手机存储过程的某些信息:
- 执行了多少次
- 执行的执行计划如何
- 执行的平均读写如何
- 执行平均需要多少时间
列名
数据类型
说明
database_id
|
int
|
存储过程所在的数据库 ID。
|
object_id
|
int
|
存储过程的对象标识号。
|
type
|
char(2)
|
对象的类型:
P = SQL 存储过程
PC = 程序集 (CLR) 存储过程
X = 扩展存储过程
|
type_desc
|
nvarchar(60)
|
对对象类型的说明:
SQL_STORED_PROCEDURE
CLR_STORED_PROCEDURE
EXTENDED_STORED_PROCEDURE
|
sql_handle
|
varbinary(64)
|
可用于与 sys.dm_exec_query_stats 中从此存储过程中执行的查询关联。
|
plan_handle
|
varbinary(64)
|
内存中计划的标识符。该标识符是瞬态的,仅当计划保留在缓存中时,它才保持不变。该值可以与 sys.dm_exec_cached_plans 动态管理视图一起使用。
|
cached_time
|
datetime
|
存储过程添加到缓存的时间。
|
cached_time
|
datetime
|
存储过程添加到缓存的时间。
|
last_execution_time
|
datetime
|
上次执行存储过程的时间。
|
execution_count
|
bigint
|
存储过程自上次编译以来所执行的次数。
|
total_worker_time
|
bigint
|
此存储过程自编译以来执行所用的 CPU 时间总量(微秒)。
|
last_worker_time
|
bigint
|
上次执行存储过程所用的 CPU 时间(微秒)。
|
min_worker_time
|
bigint
|
此存储过程在单次执行期间曾占用的最大 CPU 时间(微秒)。
|
max_worker_time
|
bigint
|
此存储过程在单次执行期间曾占用的最大 CPU 时间(微秒)。
|
total_physical_reads
|
bigint
|
此存储过程自编译后在执行期间所执行的物理读取总次数。
|
last_physical_reads
|
bigint
|
上次执行存储过程时所执行的物理读取次数。
|
min_physical_reads
|
bigint
|
该存储过程在单次执行期间所执行的最少物理读取次数。
|
max_physical_reads
|
bigint
|
该存储过程在单次执行期间所执行的最大物理读取次数。
|
total_logical_writes
|
bigint
|
此存储过程自编译后在执行期间所执行的逻辑写入总次数。
|
last_logical_writes
|
bigint
|
上次执行存储过程时所执行的逻辑写入次数。
|
min_logical_writes
|
bigint
|
该存储过程在单次执行期间所执行的最少逻辑写入次数。
|
max_logical_writes
|
bigint
|
该存储过程在单次执行期间所执行的最大逻辑写入次数。
|
total_logical_reads
|
bigint
|
此存储过程自编译后在执行期间所执行的逻辑读取总次数。
|
last_logical_reads
|
bigint
|
上次执行存储过程时所执行的逻辑读取次数。
|
min_logical_reads
|
bigint
|
该存储过程在单次执行期间所执行的最少逻辑读取次数。
|
max_logical_reads
|
bigint
|
该存储过程在单次执行期间所执行的最大逻辑读取次数。
|
total_elapsed_time
|
bigint
|
完成此存储过程的执行所用的总时间(微秒)。
|
last_elapsed_time
|
bigint
|
最近完成此存储过程的执行所用的时间(微秒)。
|
min_elapsed_time
|
bigint
|
任意一次完成此存储过程的执行所用的最短时间(微秒)。
|
max_elapsed_time
|
bigint
|
任意一次完成此存储过程的执行所用的最长时间(微秒)。
|
下面语句返回前十句耗费时间最长的存储过程信息:
SELECT TOP 10
a.object_id ,
a.database_id ,
DB_NAME(ISNULL(a.database_id,'')) 'DatabaseName',
OBJECT_NAME(object_id, database_id) 'proc name' ,
a.cached_time ,
a.last_execution_time ,
a.total_elapsed_time ,
a.total_elapsed_time / a.execution_count AS [avg_elapsed_time] ,
a.execution_count ,
a.total_physical_reads / a.execution_count avg_physical_reads ,
a.total_logical_writes ,
a.total_logical_writes / a.execution_count avg_logical_reads ,
a.last_elapsed_time ,
a.total_elapsed_time / a.execution_count avg_elapsed_time ,
b.text ,
c.query_plan
FROM sys.dm_exec_procedure_stats AS a
CROSS APPLY sys.dm_exec_sql_text(a.sql_handle) b
CROSS APPLY sys.dm_exec_query_plan(a.plan_handle) c
ORDER BY [total_worker_time] DESC ;
GO
分享到:
相关推荐
采用dmv sys.dm_db_index_usage_stats 获取数据表的最后访问时间
我们都知道DBCC命令有点尴尬,因为你不能在T-SQL查询里调用它们,...使用sys.dm_exec_input_buffer非常简单:这个DMF需要2个输入参数——会话和指定会话的请求id。下面代码展示了调用新函数的简单例子。 SELECT * FRO
4. sys.dm_exec_sessions等相关dmv: select * from sys.dm_exec_connections select * from sys.dm_exec_requests select * from sys.dm_exec_sessions 然后dbcc INPUTBUFFER(spid)来获取指定进程执行的SQL,...
SQL Server本身提供了这么一个DMV来返回这些信息,它就是sys.dm_exec_sessions 。 比如在我的机器上做一下查询: 代码如下: SELECT * FROM sys.dm_exec_sessions WHERE host_name IS NOT NULL 如图: 我们也可以...
我经常会被反复问到这样的问题:”我有一个性能很差的SQLServer... 至于你的差性能SQLServer查询的一个重要的DMV是sys.dm_exec_query_stats。对于每个缓存的执行计划,SQLServer存储了这个执行计划在运行时的详细信息
php脚本语言实现,这是一个用php脚本语言写的文件管理,爱一网情深文件管理系统 w4.0,爱一网情深文件管理系统是一款小巧实用的多用户文件管理系统,此系统比较适合用作单位内部文件的传递。,手头参考的例子程序代码
我们探讨了SQL Server里的闩锁,以及如何使用DMV sys.dm_os_wait_stats 和sys.dm_os_latch_stats进行闩锁等待的故障排除,需要的朋友可以参考下
SQLserver 2014 AlwaysOn在SQLserver 2012的基础之上,进行了很大程度的增加,如可以通过“添加 ... 提供了一个新的系统函数 sys.fn_hadr_is_primary_replica 和一个新的 DMV sys.dm_io_cluster_valid_path_names; 以
SQL Server内核的元数据:通过对内部的元数据的分析,我们快速而准确获取很多与SQL Server内部相关的信息,从而进行性能分析
一.概述 IO 内存是sql server最重要的资源,数据从磁盘加载到内存,再从内存中缓存,输出到应用端,在sql server 内存初探中有介绍。在明白了sqlserver内存原理后,就能更好的分析I/O开销,从而...sys.dm_exec_query_st
compare_la_dmv_hispanic_community_employment_rates 该存储库包含原始数据,Excel分析以及来自洛杉矶和DMV地区的西班牙裔体面劳动者的就业数据的数据可视化。洛杉矶和DMV地区西班牙裔人的就业结果比较分析背景随着...
DeathMach for css v34
使用DMV和DMF分析数据库性能.docx
台达DMV视觉影像系统说明书pdf,台达DMV视觉影像系统说明书
Sql Server 数据库优化常用脚本,性能排查,sql server性能分析--查询死锁的sql语句,sql server性能分析--检测数据库阻塞语句
sql2000,2005,2008DMV系统视图工具,性能分析的利器
中达电通机器视觉系统DMV系列rar,中达电通机器视觉系统DMV系列
SQL server从2005开始,引入了DMV和DMF来监控数据库的信息。可以用于监控服务器实例的运行状况、诊断问题和优化性能。 DMF和DMV有挺多,做为DBA应该掌握经常用到的语句。。
[ECCV'18]3DMV:联合3D多视图预测3D语义场景分割_Python_下载.zip
从2005以后引入了DMO(DMV+DMF)作为SQLServer管理工具,本书通过使用DMO,专注于SQLServer的性能优化。性能优化的手段有多种,但是DMO具有便捷的特性,使其在SQLServer的管理中具有不可替代并越来越重要的作用,...