全部博文(21)
分类: DB2/Informix
2008-12-01 15:35:45
onstat的每个选项标志和功能 | |
主题或功能 | 选项标志 |
显示onstat的使用方法 | onstat -- |
B树刷新请求 | onstat -C |
缓冲区,所有使用的或未使用的信息 | onstat -B |
当前使用中的缓冲区信息 | onstat -b |
显示关于共享或等待缓冲区的线索的精确信息 | onstat -X |
显示缓冲区杂凑链信息 | onstat -h |
配置文件信息($INFORMIXDIR/etc/$ONCONFIG) | onstat -c |
显示各Dbspace中chunk常用信息 | onstat -d |
显示各Dbspace中前50个chunk的页读入/写出信息 | onstat -D |
交互方式 | onstat -I |
显示latch的常用信息 | onstat -s |
显示关于活动锁的信息 | onstat -k |
日志信息(逻辑日志和物理日志,包括页地址) | onstat -l |
显示LRU队列,FLRU队列,MLRU队列的详细信息 | onstat -R |
监控多线索等信息 | onstat -g |
显示OnLine系统消息日志的最后20行内容 | onstat -m |
显示OnLine活动简要表(profile)统计数据 | onstat -p |
周期性地重复onstat命令 | onstat -r |
将当前共享内存段的副本存储到一个指定的文件中 | onstat -o |
面向用户(小写)选项汇总 | onstat -a |
显示活动tablespace的常用信息 | onstat -t |
显示事务信息 | onstat -x |
用户线索和事务 | onstat -u |
显示页刷新到磁盘时发生的各种写操作类型计数信息 | onstat -F |
将所有统计计数置0(清空简要表统计) | onstat -z |
等同于onstat–cuskbtdlp | onstat -a |
几个常用的onstat选项实例解释
· onstat -m :显示消息日志的最后20行.
消息日志的内容包括:
1)、检查点信息
2)、读写错误信息
3)、ONLINE模式转换信息
4)、长事务
5)、日志文件满(LOG FILE FULL )
若想显示完整信息,可直接编译消息日志文件.
· onstat -d:磁盘空间的使用情况,包括DBSPACE和CHUNK的信息
Dbspaces
address number flags fchunk nchunks flags owner name
c57ef158 1 1 1 1 N informix rootdbs
c57efd18 2 2001 2 1 N T informix tmpdbs
c57efdd8 3 1 3 1 N informix llogdbs
c57efe98 4 1 4 1 N informix plogdbs
c57eff58 5 1 5 8 N informix datadbs1
5 active, 2047 maximum
Chunks
address chk/dbs offset size free bpages flags pathname
c57ef218 1 1 0 150000 148715 PO- /dev/vg01/lvol1
c57ef378 2 2 0 250000 249881 PO- /dev/vg01/lvol2
c57ef458 3 3 0 125000 197 PO- /dev/vg01/lvol3
c57ef538 4 4 0 125000 2447 PO- /dev/vg01/lvol4
其中的FREE项,显示了该CHUNK的空闲空间大小(Kbytes).
· onstat -l :日志文件情况
Physical Logging
Buffer bufused bufsize numpages numwrits pages/io
P-2 42 256 123414 1068 115.56
phybegin physize phypos phyused %used
400035 122500 110222 42 0.03
Logical Logging
Buffer bufused bufsize numrecs numpages numwrits recs/pages pages/io
L-2 0 64 6150454 194478 8434 31.6 23.1
Subsystem numrecs Log Space used
OLDRSAM 6150454 385076912
address number flags uniqid begin size used %used
c128d020 1 U-B---- 6776 300035 12500 12500 100.00
c128d03c 2 U-B---- 6777 303109 12500 12500 100.00
c128d058 3 U-B---- 6778 3061dd 12500 12500 100.00
c128d074 4 U-B---- 6779 3092b1 12500 12500 100.00
c128d090 5 U-B---- 6780 30c385 12500 12500 100.00
c128d0ac 6 U---C-L 6781 30f459 12500 6768 54.14
c128d0c8 7 U-B---- 6772 31252d 12500 12500 100.00
c128d0e4 8 U-B---- 6773 315601 12500 12500 100.00
c128d100 9 U-B---- 6774 3186d5 12500 12500 100.00
c128d11c 10 U-B---- 6775 31b7a9 12250 12250 100.00
其中:%USED: 使用百分比
FLAGS字段的含义:
F: 空闲 B:已备份 C: 正在接收事物记录
U: 正在使用 A: 新增日志 L: 包含最后一个检查点
· onstat - u:ONLINE的用户情况
Userthreads
address flags sessid user tty wait tout locks nreads nwrites
c57f1018 ---P--D 1 informix - 0 0 0 757 36481
c57f1504 ---P--F 0 informix - 0 0 0 0 377273
c57f19f0 ---P--- 5 informix - 0 0 0 0 6742
c57f1edc ---P--B 6 informix - 0 0 0 29 257
其中:flages字段的含义:
第一列:(S:等待mutex;Y:等待条件;L:等待锁;B:等待缓冲区;
C:等待检查点;X:长事务清理;G:等待长缓冲写;T:等待事务)
第二列:(*:事务执行时,发生I/O错误)
第三列:(A:正在备份;B:操作已被记录在日志中;P:分布处理已准备好;
C:正在提交;R:正在回滚)
第四列:(P:会话的主线索)
第五列:(R:在read rsam 调用中;X:进程在关键分区)
第七列:(M:特殊监控;D:特殊线索;C:清理线索;F:特殊清页进程;
B:特殊B+树清页线索)
· onstat -k :用户持有锁的情况
锁按照粒度分为6种: 库锁、表锁、页锁、行锁、字节锁、键锁
字节锁:更新包含有VARCHAR类型的行时,加在该行上的锁。
键锁:用于索引树上的锁。一般在相应字节上加删除标志。
这几种锁的识别如下:
TYPE ONLSNUM ROWID SIZE
库锁 HDR+X 1000002 205 0
表锁 100000e 0 0
页锁 100 0
行锁 101
字节锁 HDR+B 909
键锁 很大的16进制数
锁的生命期:1、不使用事务时,操作完成即会释放对应的锁;
2、 若使用事务,锁将伴随整个事务。(即随这COMMIT WORK或ROLLBACK WORK而释放)
(**锁的几种类型:共享锁(SHARE),排它锁(EXCLUSIVE),可升级锁**)
· onstat -p : 显示系统资源状况(是否充分)
Profile
dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached
2112876 5085802 697502689 99.70 469082 1154138 9885314 95.25
isamtot open start read write rewrite delete commit rollbk
269117818 4202839 19282008 199402561 3286406 981022 270765 261330 20733
gp_read gp_write gp_rewrt gp_del gp_alloc gp_free gp_curs
0 0 0 0 0 0 0
ovlock ovuserthread ovbuff usercpu syscpu numckpts flushes
0 0 0 66354.52 3954.04 341 682
bufwaits lokwaits lockreqs deadlks dltouts ckpwaits compress seqscans
721270 153 794000443 0 0 246 72878 784815
ixda-RA idx-RA da-RA RA-pgsused lchwaits
458268 5293 1041489 1480397 1904
OVONLS:指示ONLSPACE值不够 ,ONLSPACES值应增大
OVLOCK:锁溢出 LOCKS应增大
OVUSER:用户表资源不够 USERS
OVBUF:缓冲区资源不够 BUFFERS
以上数字若持续增加,表明相应参数值应调整
DEADLOCKS:检测到的死锁数
DLTOUTS:网络超时死锁
DEADLOCK_TIMEOUT:一般为60秒,若增大此数字,可以减少死锁数,但会增加响应时间,用户看来性能更差;若减少此数字,死锁数可能会增大,但会减少响应时间,在用户看来,响应时间变快了。