六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 183|回复: 0

如何使用onstat工具查看INFORMIX长事务

[复制链接]

升级  74%

5

主题

5

主题

5

主题

童生

Rank: 1

积分
37
 楼主| 发表于 2013-1-14 23:26:48 | 显示全部楼层 |阅读模式
一、查看数据库状态
正常情况下是
infodb% onstat -
IBM Informix Dynamic Server Version 9.40.FC7     -- On-Line -- Up 35 days 16:51:16 -- 3920896 Kbytes

长事务情况下是
infodb% onstat -
IBM Informix Dynamic Server Version 9.40.FC7     -- On-Line (LONGTX) -- Up 35 days 16:41:40 -- 3920896 Kbytes
Blocked:LONGTX


二、显示事务(transaction)信息
其中flag字段中第三个标志位为R说明事务在rollback,说明这个事务是长事务
infodb% onstat -x
IBM Informix Dynamic Server Version 9.40.FC7     -- On-Line (LONGTX) -- Up 35 days 16:41:56 -- 3920896 Kbytes
Blocked:LONGTX
Transactions
1cf0a6748        A-R-- 1cd55c618        642073 119403 119405 0x1aa91e4 DIRTY   0

三、通过长事务的userthread值找出session id
infodb% onstat -u |grep 1cd55c618
1cd55c618        --RPX-- 1880841 informix -        0                0    642073 256446   323049


四、显示会话连接信息,找出造成长事务的SQL语句,并优化
infodb% onstat -g ses 1880841
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表