最近一直想寻求一种类似ORACLE中优化系统的方法,也就是通过查询某个视图或某个指标来获取系统当前存在的瓶颈,虽然,象一些书里介绍的那样可以通过性能计数器和查询可以解决某些问题,但毕竟系统内的很多因素之间是互相影响的,并不能立刻从根本上解决存在的瓶颈问题,昨天在边研究边做《Microsoft.Press.Inside.Microsoft.SQL.Server.2005.Query.Tuning.and.Optimization.Sep.2007》的笔记,这也是我一直以来想完成的一个任务,就是通过总结、归纳以往我看的有关MSSQL的资料和知识,得出一套切实可行的优化MSSQL的方法,起码要把思路搞清楚,所以最近一直在努力,可昨晚我忽然看到其中提到了sys.dm_os_wait_stats的视图,这使我忽然看到了希望,觉得MSSQL看来也模仿了ORACLE,在动态视图里也记录了当前系统的等待信息,这让我欣喜若狂,今天下午没去培训结果查了一下MSSQL2005的资料,原来MSSQL2005的袖里乾坤也不简单啊,基本具备了视图优化和查询的雏形啊,也许以前就有,只是我们没发现而已。看了几大类DM视图和函数,了解了一些基本概念,理顺了一下思路,先总结如下:
一、通过sys.dm_os_wait_stats获取系统等待信息:
1. 获取数量最多的等待:
SELECT * FROM sys.dm_os_wait_stats
where waiting_tasks_count<>0
ORDER BY waiting_tasks_count desc,wait_time_ms desc
2. 获取等待时间和最长的等待:
SELECT * FROM sys.dm_os_wait_stats
where waiting_tasks_count<>0
ORDER BY wait_time_ms desc, waiting_tasks_count desc
二、通过sys.dm_os_waiting_tasks获取信息:
1. 获取等待任务相关会话信息:
select w_tsk.session_id,w_tsk.wait_type,w_tsk.resource_description,s_txt.text from
sys.dm_os_waiting_tasks w_tsk
join
sys.dm_os_tasks a_tsk
on w_tsk.waiting_task_address=a_tsk.task_address
and w_tsk.session_id=a_tsk.session_id
join
sys.dm_exec_requests a_req
on a_tsk.session_id=a_req.session_id
and a_tsk.request_id=a_req.request_id
CROSS APPLY sys.dm_exec_sql_text(a_req.sql_handle) AS s_txt
where w_tsk.blocking_session_id is not null
2. 取获等待任务信息:
select * from sys.dm_os_waiting_tasks
where blocking_session_id is not null
order by wait_duration_ms
三、所有事件信息(因内容较多,在专门文档里给出)
编辑推荐:
- SQL Server数据库管理常用SQL和T-SQL语句03-02
- Word2007中如何插入页码03-02
- 关于通过DM_视图寻求优化MSSQL的方法03-02
- Word2007个人文档怎么加密03-02
- Word2007输入不了中文怎么办03-02
- Word2007表格标题行重复出现的设置方法03-02
- Word2007怎么设置行距03-02
- Word2007如何制作学校组织结构图03-02
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- AutoCAD三维建模教程:三通管的制作过程
AutoCAD三维建模教程:三通管的制作过程
26-03-02 - mssql优化学习笔记之三
mssql优化学习笔记之三
26-03-02 - mssql优化学习笔记之一
mssql优化学习笔记之一
26-03-02 - SQL Server 2005 System Objects
SQL Server 2005 System Objects
26-03-02 - a useful article about page internal structure
- SQL2000 同步问题,字符被截断
SQL2000 同步问题,字符被截断
26-03-02 - AutoCAD三维建模教程:拉升、移动、倒角
AutoCAD三维建模教程:拉升、移动、倒角
26-03-02 - Word2007如何变换外观主题
Word2007如何变换外观主题
26-03-02 - AutoCAD建模教程:绘制八心八箭的钻石
AutoCAD建模教程:绘制八心八箭的钻石
26-03-02 - Word2007如何删除首页页码
Word2007如何删除首页页码
26-03-02
