监控 SQL Server 的运行状况 SQL Server 设计
Microsoft SQL Server 2005 提供了一些工具来监控数据库。方法之一是动态管理视图。动态管理视图 (DMV) 和动态管理函数 (DMF) 返回的服务器状态信息可用于监控服务器实例的运行状况、诊断问题和优化性能。
常规服务器动态管理对象包括:
dm_db_*:数据库和数据库对象
dm_exec_*:执行用户代码和关联的连接
dm_os_*:内存、锁定和时间安排
dm_tran_*:事务和隔离
dm_io_*:网络和磁盘的输入/输出
此部分介绍为监控 SQL Server 运行状况而针对这些动态管理视图和函数运行的一些常用查询。
示例查询
您可以运行以下查询来获取所有 DMV 和 DMF 名称:
view plaincopy to clipboardprint?
SELECT * FROM sys.system_objects
WHERE name LIKE 'dm_%'
ORDER BY name
SELECT * FROM sys.system_objects
WHERE name LIKE 'dm_%'
ORDER BY name
监控 CPU 瓶颈
CPU 瓶颈通常由以下原因引起:查询计划并非最优、配置不当、设计因素不良或硬件资源不足。下面的常用查询可帮助您确定导致 CPU 瓶颈的原因。
下面的查询使您能够深入了解当前缓存的哪些批处理或过程占用了大部分 CPU 资源。
view plaincopy to clipboardprint?
SELECT TOP 50
SUM(qs.total_worker_time) AS total_cpu_time,
SUM(qs.execution_count) AS total_execution_count,