SQL Server Profiler 监听 SQL 语句技巧

SQL Server Profiler 是 SQL 跟踪的图形用户界面,用于监视 数据库引擎 或 Analysis Services 的实例。 您可以捕获有关每个事件的数据并将其保存到文件或表中供以后分析。 例如,可以对生产环境进行监视,了解哪些存储过程由于执行速度太慢影响了性能。

SQL Server Profiler 我经常使用,比如监视第三方应用执行的 SQL。再比如使用了 ORM 框架的项目,虽然可以少写很多 SQL,但是当使用 ORM 出现异常时,很难跟踪到内部具体执行的 SQL,这个时候 SQL Server Profiler 就是一大利器了。

屏蔽不需要的监视的事件

如监视 SQL,以下事件都可以屏蔽。

Audit Lgoin 和 Audit Logout

当进行数据库连接建立时会触发 Audit Login 事件;而当有某个数据库连接关闭时将触发 Audit Logout 事件。

通过这两个事件,可以看到一个连接的生命周期。如果有用户抱怨连接失败,也可以跟踪 Audit Login Failed。如果连接请求是被 SQL 拒绝的,可以看到拒绝的时间和理由。

ExistingConnection

ExistingConnection 事件类表示启动跟踪时现有用户连接的属性。服务器为每个现有用户连接生成一个 ExistingConnection 事件。

Application Name

在数据库连接字符串中配置 Application Name 参数:

1
server=192.168.10.3;database=RanGong;uid=sa;pwd=******;Application Name=test;

在 Profiler 筛选器中配置相同的 Application Name,这样就能监视指定应用所执行的 SQL。

TextData

监视指定语句,%为通配符。如 select%:监视以 select 开头的查询语句。

SQL Server Profiler 监听 SQL 语句技巧

https://ganzhixiong.com/p/733f1c84/

Author

干志雄

Posted on

2023-03-07

Updated on

2023-03-07

Licensed under

Comments