SqlServer性能优化 手工性能收集动态管理视图(三)

网友投稿 285 2022-09-04

SqlServer性能优化 手工性能收集动态管理视图(三)

动态管理视图:

具体的实例语句:

--关于语句执行的基本情况 select * from sys.dm_exec_query_stats --动态管理函数 需要提供参数 select top 10 execution_count,total_worker_time,t.text,total_worker_time/execution_count as avgcpu from sys.dm_exec_query_stats as s cross apply sys.dm_exec_sql_text(s.sql_handle) as t order by avgcpu desc --当前正在等待cpu执行的任务数 select runnable_tasks_count from sys.dm_os_schedulers where runnable_tasks_count>0 --内存方面的动态管理视图 select * from sys.dm_os_memory_cache_clock_hands where rounds_count>0 and removed_all_rounds_count>0

如果指定了 CROSS APPLY,在右侧的行集表达式返回一个空的行集为该行时不生成任何行,行的左侧的行集。

--评估哪些语句浪费SQL性能 SELECT * FROM sys.dm_exec_query_stats -- 所需时间除以执行次数 select top 10 total_elapsed_time/execution_count as avgtotal,t.text from sys.dm_exec_query_stats as s --关于语句的信息 cross apply sys.dm_exec_sql_text(s.sql_handle) as t order by avgtotal desc

--评估数据库io 的问题 select * from sys.dm_io_pending_io_requests -- 挂起io的请求 视图 select * from sys.dm_io_virtual_file_stats((select DB_ID('AdventureWorks2014')),null) --函数 返回数据和日志文件的 I/O 统计信息 --说明文件是被挂起的 select s.file_id,r.io_pending from sys.dm_io_pending_io_requests as r inner join sys.dm_io_virtual_file_stats((select DB_ID('AdventureWorks2014')),null) as s on r.io_handle=s.file_handle

创建一个表:

create database HRDB go use HRDB go create table t1(c1 int,c2 int) go insert t1 values(1,1)

启动事物  不关闭  造成线程阻塞

begin tran update t1 set c1=2 where c1=1 --并不结束

另一个用户去查询表

--语句被阻塞select * from t1

查看系统的阻塞情况

--查看系统阻塞的情况 select * from master..sysprocesses select distinct 'PID'=str(s.spid,4), 'BLOCKID'=str(s.blocked,4), 'Status' = case s.status when 'sleeping' then 'Running' when 'runnalbe' then 'Complete' when 'suspended' then 'Blocked' end,t.text from master..sysprocesses as s cross apply sys.dm_exec_sql_text(s.sql_handle) as t where s.dbid=(select DB_ID('hrdb'))

把事物进行提交:

commit select * from t1

再次运行以上的语句结果如下:

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:C#算法 选择排序、冒泡排序、插入排序
下一篇:SqlServer性能优化索引(五)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~