db2 优化基础 查询运行时间最长的SQL

本文介绍了一种查询运行时间最长的SQL的方法。通过开启DB2监控开关并获取动态SQL快照,可以找出消耗资源最多的SQL语句。该过程包括更新监控开关状态及解析输出文件。

之前写过一个查询运行查看运行时间最长的应用。查询到的是,应用程序。比如我的程序。查到的是IIS,没什么用。

select elapsed_time_min,appl_status,agent_id from sysibmadm.long_running_sql order by elapsed_time_min desc fetch first 5 rows only

查询运行时间最长的SQL,要使用快照。


首先运行下列语句,打开先关的开关:

db2 UPDATE MONITOR SWITCHES USING lock on
db2 UPDATE MONITOR SWITCHES USING sort on
db2 UPDATE MONITOR SWITCHES USING Bufferpool on
db2 UPDATE MONITOR SWITCHES USING table on
db2 UPDATE MONITOR SWITCHES USING statement on
db2 UPDATE MONITOR SWITCHES USING uow on

然后运行

db2  GET SNAPSHOT FOR DYNAMIC SQL ON easdb >>d:\DYNAMICSQL.txt 

在输出的文件里搜索:总计运行时间(秒.毫秒)

比如我使用notepad++,搜索的结果,然后找到相应的SQL,看看能否够改动代码,或者改动SQL


转载于:https://www.cnblogs.com/jzdwajue/p/6953148.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值