sql server怎样用sql profiler捕获带变量值的慢sql

一 新建跟踪

点击工具-SQL Server Profiler:

点击文件-新建跟踪的按钮:

在'事件选择'选项卡只选择如下两项内容(RPC:Completed,SQL:BatchCompleted),把多余的取消勾选:

然后勾选上面截图中右下方的'显示所有列',会出现很多列,勾选重要的列(库名,表名等),示例:

点击上面截图里右下方的'组织列',可以调整这些列的顺序。

点击上面截图里右下方的'列筛选器',可以指定条件:

#这里筛选查询时长大于1秒的慢sql:

也可以点击'TextData'只跟踪某类sql(模糊匹配),示例:

跟踪文本内容包含aa的sql,注意,需要加上%,否则不显示结果:

也可以只跟踪某个数据库的:

也可以只跟踪某个对象的:

都配置好后,点击'运行'按钮。

二 模拟执行大于1秒的慢sql

select * from test2 where id>15000000

三 查看跟踪结果

示例:

带变量值的示例:

四 总结

profiler跟踪某个库,某个表,或者某个sql文本,比较方便,但是较耗性能,平时不建议开启。

在临时审计一个不明操作的时候可以使用(比如,发现一个表被定期truncate,则可以用)。

如果要跟踪慢sql,建议用扩展事件跟踪,方便定位较耗性能的某类慢sql(按总体cpu消耗时长降序排序),详细可参考sql server怎样用扩展事件捕获带变量值的慢sql-CSDN博客

相关推荐
無a伟2 小时前
Redis持久化详解:RDB与AOF原理、配置、优缺点
数据库
muddjsv3 小时前
SQLite 外键进阶:CASCADE / SET NULL / 级联更新与完整性校验
数据库·sqlite
APItesterCris3 小时前
Open Claw 实战教程:5 分钟搭建京东商品自动化监控与数据分析系统
大数据·运维·数据库·数据仓库·自动化
Nturmoils4 小时前
查库存的 SQL 时灵时不灵,最后发现是 WHERE 里两个函数在打架
数据库
不想纳尼的青春4 小时前
where = 的作用?会影响性能吗?count(*) 和 count()哪个快?
数据库·oracle
倔强的石头_5 小时前
Spring Boot 接入金仓数据库:配置分层、启动自检与常见错误
数据库
黑桃小柒75 小时前
Django模型关系:从一对多到多对多全解析
数据库·django·sqlite
上海安当技术5 小时前
统一身份认证平台怎么落地?11 个异构业务系统接入 ASP 的完整实施路径
数据库·servlet·架构·kubernetes·jenkins
在水一缸6 小时前
PGSimCity:当数据库内核变成一座可以漫步的城市
数据库·postgresql·可视化·开源项目·数据库内核·pgsimcity·技术科普
jnrjian6 小时前
psql 执行多个 sql 文件
数据库·sql