博客
关于我
SQLServer 查看耗时较多的SQL语句(转)
阅读量:411 次
发布时间:2019-03-06

本文共 1388 字,大约阅读时间需要 4 分钟。

SELECT TOP 20    total_worker_time/1000 AS [总消耗CPU 时间(ms)],execution_count [运行次数],    qs.total_worker_time/qs.execution_count/1000 AS [平均消耗CPU 时间(ms)],    last_execution_time AS [最后一次执行时间],max_worker_time /1000 AS [最大执行时间(ms)],    SUBSTRING(qt.text,qs.statement_start_offset/2+1,         (CASE WHEN qs.statement_end_offset = -1         THEN DATALENGTH(qt.text)         ELSE qs.statement_end_offset END -qs.statement_start_offset)/2 + 1)     AS [使用CPU的语法], qt.text [完整语法],    dbname=db_name(qt.dbid),    object_name(qt.objectid,qt.dbid) ObjectNameFROM sys.dm_exec_query_stats qs WITH(nolock)CROSS apply sys.dm_exec_sql_text(qs.sql_handle) AS qtWHERE execution_count>1ORDER BY  total_worker_time DESC

这段代码用于分析数据库中的查询性能数据,主要关注CPU消耗时间、执行次数以及相关的性能指标。通过对sys.dm_exec_query_stats和sys.dm_exec_sql_text进行JOIN操作,可以获取到具体的查询文本和执行情况,从而对高频查询的性能进行全面评估。该查询结果可以帮助数据库管理员识别长时间运行的查询、分析CPU瓶颈以及优化数据库执行计划。

代码中的关键部分包括:

  • total_worker_time/1000:用来获取总消耗CPU时间(以毫秒为单位)
  • execution_count:表示查询的执行次数
  • qs.total_worker_time/qs.execution_count/1000:计算平均消耗CPU时间
  • last_execution_time:显示最后一次执行查询的时间
  • max_worker_time /1000:获取最大执行时间
  • SUBSTRING函数:用于提取具体的查询语法
  • dbname和object_name:显示数据库名称和对象名称

查询结果可以按总消耗CPU时间排序,方便识别高消耗的查询。通过分析这些数据,可以采取以下优化措施:

  • 优化查询语句
  • 修改索引策略
  • 调整执行计划
  • 定期清理长时间未执行的查询

数据库性能优化是数据库管理员的重要工作之一,这些信息可以帮助管理员更好地了解数据库运行状态,并采取针对性的优化措施。

转载地址:http://fovkz.baihongyu.com/

你可能感兴趣的文章
poj3307
查看>>
Qt笔记——QString与隐式共享、MVC架构
查看>>
Qt笔记——QSemaphore处理生产者/消费者模式
查看>>
Qt笔记——QMutex&QWaitCondition处理生产者消费者模式
查看>>
Qt笔记——QLable+QPixmap图片缩放踩坑
查看>>
Qt笔记——foreach与forever
查看>>
QT程序怎么挪到Linux下,linux+Qt程序如何打包发布
查看>>
Qt知识:视图框架QGraphicsWidget详解
查看>>
SpringBoot中项目启动及定时任务缓存数据库常用数据至内存变量并转换后高频调用
查看>>
Qt知识: 画刷风格
查看>>
QT的OpenGL渲染窗QOpenGLWidget Class
查看>>
QT的C++程序加载动态链接库DLL(Linux下是so)的方式
查看>>
QT界面操作1:如何跟踪鼠标位置?
查看>>
Qt环境搭建(Visual Studio)
查看>>
QT点击"X"按钮,调用closeEvent()函数来实现调用特定事件(附:粗略介绍QT的信号与槽的使用方法)...
查看>>
QT样式表——url路径
查看>>
QT数据库(三):QSqlQuery使用
查看>>
QT教程5:消息框
查看>>
SpringBoot中集成阿里开源缓存访问框架JetCache实现声明式实例和方法缓存
查看>>
pom.xml中提示web.xml is missing and <failonmissingw>...
查看>>