利用DB2事件监控语句执行情况

原创 2011年01月21日 09:25:00

DB2提供了一个创建事件监听的功能,用于检查数据库的日常运行情况,这里给出一个对于日常开发我认为最有用的监听——STATEMENT,它的好处就是不必逐行逐行的读代码,直接从应用的操作所产生的数据变化来理解业务。

-- 连接数据库
db2 "connect to 【dbname】"
-- 创建事件监听
db2 "create event monitor stmtmon for statements write to file '/home/【login_username】/'"
-- 启动事件监听
db2 "set event monitor stmtmon state=1"

--
-- 切换至应用程序进行数据库操作
--

-- 停止事件监听
db2 "set event monitor stmtmon state=0"
-- 删除事件监听
db2 "drop event monitor stmtmon"
-- 结束连接
db2 "terminate"
-- 整理监听内容
db2evmon -db 【dbname】 -evm stmtmon </home/【login_username】/sqltrace.out
-- 去除SELECT语句
grep -E 'Text +:' ./sqltrace | grep -v -i 'SELECT' | uniq > dml.sql.out

下面是一小部分输出内容:

  Text     : UPDATE xxx SET NOTREAD=1 WHERE id=730927
  Text     : INSERT INTO yyy(asign_id, taskcause, comments, submitter) VALUES(730927, 1, '', 93)
  Text     : UPDATE xxx SET NOTREAD=1 WHERE id=730927
  Text     : UPDATE xyz SET needappr=2178.38 WHERE idtask = 730927

在启动监听的时候,最常见的就是目录路径与读写权限的问题,以下内容可供参考,根据错误返回码做对应调整即可。

PS:
http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp?topic=/com.ibm.db2.luw.messages.sql.doc/doc/msql01614n.html
SQL1614N
An I/O error occurred when activating an event monitor. Reason code = reason-code.

Explanation
An I/O error was detected when an event monitor was activated. >reason-code< is one of the following:
1
Encountered an unknown event monitor target type.
2
The Event monitor target path was not found.
3
Access to event monitor target path was denied.
4
Event monitor target path is not the name of a pipe.
5
No process has opened the event monitor target pipe for reading.
6
Encountered an unexpected I/O error.
User response
Where possible, fix the problem described by the reason code, and resubmit the SET EVENT MONITOR statement.

sqlcode: -1614

sqlstate: 58030

参考文档:Tuning DB2 Universal Database Using the Statement Event Monitor

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

应用Druid监控SQL语句的执行情况

Druid是什么? Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、...

应用Druid监控SQL语句的执行情况

应用Druid监控SQL语句的执行情况 Druid是什么? Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括...

应用Druid监控SQL语句的执行情况

https://github.com/alibaba/druid/wiki/常见问题 https://github.com/alibaba/druid/wiki/配置_StatViewServlet...
  • zoubf
  • zoubf
  • 2016-07-19 12:18
  • 3566

应用Druid监控SQL语句的执行情况

我们监控界面的路径配置了,servlet配置我们将在哪里打开我们的监控页面,在web.xml中添加如下 代码       DruidStatView       com.alibab...

应用Druid监控SQL语句的执行情况

Druid是什么? Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JB...

应用Druid监控SQL语句的执行情况

Druid是什么? Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JB...

应用Druid监控SQL语句的执行情况

Druid是什么? Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JB...

应用Druid监控SQL语句的执行情况

Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSou...

DB2中使用事件监控器获取某个时间段里某个用户执行的SQL语句

需求:管理员想要监控在一段时间里,用户DB2TEST跑过哪些SQL语句,这个在DB2中如何做到? 答: 可以采用事情监控器: 测试过程: 1.) 管理员用户连库、创建事情监控器,并运行,下面的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)