怎么根据application id找到当时正在执行的SQL

怎么根据application id找到当时正在执行的SQL
参与7

6同行回答

zhwshzhwsh其它SK
db2top也可以找到的。显示全部
db2top也可以找到的。收起
互联网服务 · 2014-05-20
浏览782
db2_worldlovedb2_worldlove数据库管理员zcgx
回复 3# thuanqin     很有用,谢谢显示全部
回复 3# thuanqin


    很有用,谢谢收起
互联网服务 · 2014-05-13
浏览784
thuanqinthuanqin其它ibm
回复 4# 繁华如梦    嗯,db2pd在没有带笔记的时候用用比较方便,有笔记在身边的话跑个表函数看看是最方便的。可以看下这里:http://bingotree.cn/?p=287 我把几个涉及到监控的书中的监控函数大致都列出来了。  最方便的还是图形化的工具。...显示全部
回复 4# 繁华如梦


   嗯,db2pd在没有带笔记的时候用用比较方便,有笔记在身边的话跑个表函数看看是最方便的。可以看下这里:http://bingotree.cn/?p=287 我把几个涉及到监控的书中的监控函数大致都列出来了。
  最方便的还是图形化的工具。收起
互联网服务 · 2014-05-12
浏览759
繁华如梦繁华如梦其它深圳某证券
回复 2# thuanqin     db2pd没有想象的那么强大,信息容易过时,有时候得到的信息并不是最新的,容易产生误导. 最近学习使用系统动态视图,真心方便很多显示全部
回复 2# thuanqin


    db2pd没有想象的那么强大,信息容易过时,有时候得到的信息并不是最新的,容易产生误导. 最近学习使用系统动态视图,真心方便很多收起
证券 · 2014-05-12
浏览776
thuanqinthuanqin其它ibm
一般根据application handle来找,通过db2 list applications show detail可以看到这两个的关系,然后db2pd -db xxx -apinfo APPHANDLE就可以看到对应的sql了。详细的可以看下我的博客中的文章:http://bingotree.cn/?p=259...显示全部
一般根据application handle来找,通过db2 list applications show detail可以看到这两个的关系,然后db2pd -db xxx -apinfo APPHANDLE就可以看到对应的sql了。详细的可以看下我的博客中的文章:http://bingotree.cn/?p=259收起
互联网服务 · 2014-05-12
浏览764
繁华如梦繁华如梦其它深圳某证券
假设你在知道application ID的情况下,可以查看sysibmadm.snapstmt视图找到当前执行的SQL语句:db2 update db cfg using CUR_COMMIT OFF;db2 terminatedb2 connect to sampledb2 +c "select * from staff"db2 list application:Auth Id  Application  &nbs...显示全部
假设你在知道application ID的情况下,可以查看sysibmadm.snapstmt视图找到当前执行的SQL语句:

db2 update db cfg using CUR_COMMIT OFF;
db2 terminate
db2 connect to sample
db2 +c "select * from staff"

db2 list application:
Auth Id  Application    Appl.      Application Id                                                 DB       # of
         Name           Handle                                                                    Name    Agents
-------- -------------- ---------- -------------------------------------------------------------- -------- -----
DB2INST1 db2bp          52         *LOCAL.db2inst1.140512112630                                   SAMPLE   1
DB2INST1 db2bp          33         *LOCAL.db2inst1.140512112429                                   SAMPLE   1

我是使用52来查询的.

[db2inst1@~]$db2 "select agent_id, substr(stmt_text,1,40) from sysibmadm.snapstmt where agent_id =52"

AGENT_ID             2
-------------------- ----------------------------------------
                  52 select * from staff

  1 record(s) selected.

假设在不知道application ID但是知道SQL的话:

[db2inst1@~]$db2 "select agent_id from sysibmadm.snapstmt where stmt_text like 'select * from staff'
"

AGENT_ID
--------------------
                  52

  1 record(s) selected.

因为这个是动态视图,所以最好是开独自的窗口去监控.如果只用当前会话来查询的话会返回你最后一条执行的SQL语句收起
证券 · 2014-05-12
浏览784

提问者

db2_worldlove
数据库管理员zcgx

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2014-05-12
  • 关注会员:1 人
  • 问题浏览:11177
  • 最近回答:2014-05-20
  • X社区推广