Informix 管理和监控指令(1)
我们主要通过 SQL 命令操作 online 的内部数据库 sysmaster 中的内部表/结构,来获取有关的维护信息。Sysmaster 是在 online 初次初始化时,系统自动创建的。它实际主要存储了一些数据结构,而不是真正的表。使用 SMI 有如下限制:51Testing软件测试网g_:vb0F7j3w/o)Og
不能对 SMI 中的表加锁或使用隔离级别。51Testing软件测试网0|a-~,AH\
不允许使用 insert,delete,update 等语句(只读)
6b"pH*U;l.f2j*?0不能使用 dbschema,dbexport 等命令
fh0s Y;t'JFC0使用 select rowid 语句将会产生不可预料的结果51Testing软件测试网0H-FHleg-C%~l
主要的SMI表有:
r5IR{/J"Nr0sysdatabases:online 中的数据库信息
+r;xze:h0systabnames:某数据库中所有表的信息51Testing软件测试网:BR\4ZOSc
syslogs:逻辑日志信息
`;K~DN p,|0sysdbspaces:数据库信息51Testing软件测试网a/e{$R/q7H3ZOn
syschunks,syslocks 等
)h$d8\rF0例1:显示处于脱机(offline)状态的 chunk 的序号和所在数据库空间51Testing软件测试网u\Cv1K0M
Select chknum,dbsnum from syschunks where is_offline=1 or misline=!51Testing软件测试网G1o+V4xf Co0Sv`
例二:显示满 chunk 的信息51Testing软件测试网M&a,c,`(E4s^:J2zVP
Select chknum,dbsnum from syschunks where nfree=0
/\k@~T!N S0二、 TBSTAT
.N^VPE}0j0列出当前时刻的信息(实际也是读取SMI表)
'V"r,YiI0不需要磁盘 I/O
+E xk`a&D|"|0不需要锁等系统资源,因此不会影响系统性能51Testing软件测试网K7T]|%S Q9[_mSs
用法: tbstat [-abcdklmpstuzBDFPRX] [-r seconds] [-o file] [infile]
NL6]{|)s0-a print all info (options: bcdklmpstu)
k`5A,z G} Vz:v0-b print buffers(缓冲区)51Testing软件测试网Dbayk4e])tY8y
-c print configuration file(配置文件)51Testing软件测试网!h"qt)x[y-}&yS
-d print dbspaces and chunks(dbspace和chunk)51Testing软件测试网LL&m@`6iY&Np
-k print locks(锁)51Testing软件测试网U:liq2A iK~
-l print logging(日志)
UWT/?L4QI7}L0-m print message log(消息日志)
2W Ej4Pq \y0-p print profile(profile文件)
:oI[~1t(_p;t0-s print latches(门闸)
R*}~|b0-t print tblspaces(表空间)51Testing软件测试网,cIHAQ+}
-u print users(用户)51Testing软件测试网GL@}g%{
-z zero profile counts51Testing软件测试网x#F^&Obn3on@b
-B print all buffers
x;ckTa~m9I;u0-D print dbspaces and detailed chunk stats51Testing软件测试网q'i9[(_$T^vN!]
-F print page flushers(页刷新进程)
6T,Er+q{~4{o%Dt0-P print profile, including BIGreads
;?/j?:FV)s*|2|0-R print LRU queues(LRU队列)
"NF)hP_0| F0-X print entire list of sharers and waiters for buffers51Testing软件测试网x0d9PnJ)ZI'G*Ap
-r repeat options every n seconds (default: 5)51Testing软件测试网6?p&^#|c/O8\Q[
-o put shared memory into specified file (default: tbstat.out)
-L7h;h|U_ RtF0infile use infile to obtain shared memory information51Testing软件测试网eSEg_9M0t$t
三、 几个常用的 tbstat 选项
zx7MRpf^dTJ8Pa0tbstat -m :显示消息日志的最 后20 行。消息日志的内容包括:
H6Y/{d+[1S |01)、检查点信息51Testing软件测试网,AC_Ram
2)、读写错误信息51Testing软件测试网uJ-j1M/[sug
3)、ONLINE 模式转换信息51Testing软件测试网g(vwn+Z
4)、长事务
5I7C\a O05)、日志文件满(LOG FILE FULL )51Testing软件测试网-j4ULQ]B2a2^:};^
若想显示完整信息,可直接编译消息日志文件.51Testing软件测试网a.{~v+_DK
Tbstat -d:磁盘空间的使用情况,包括 DBSPACE 和 CHUNK 的信息
e[dY}#~Ga0例:RSAM Version 5.03.UC1 -- On-Line -- Up 09:45:41 -- 816 Kbytes51Testing软件测试网e4O:Uf-]0X(Mu [
Dbspaces
.b J3v/H$V4a l1{0address number flagsfchunk nchunks flags ownername
8c@1Vt\6q9d q[^ j08040a244 1111 N informix rootdbs51Testing软件测试网C)n&eq T?
1 active, 8 total51Testing软件测试网 R:n_a+Q A/I
Chunks51Testing软件测试网/AX Y${8f5K&t;a
address chk/dbs offset size free bpages flags pathname51Testing软件测试网*Yr+J-L-b"yq6Et
80409d84 1 1 0 300000 231871PO- /dev/rdata51Testing软件测试网(P`$G yC(B%z
1 active, 8 total
3^.jJ}L3Yl6c"LKJ0其中的 FREE 项,显示了该 CHUNK 的空闲空间大小(Kbytes).51Testing软件测试网gPF3EgZ
Tbstat -l :日志文件情况51Testing软件测试网L KE"c;aT.p'Geu
Physical Logging51Testing软件测试网}uQJ~U)aO{Gj
Buffer bufused bufsize numpages numwrits pages/io51Testing软件测试网%t#Z8_ jq$o0i
P-2 016 000.00
{E-j'` P7RyT0phybegin physize phypos phyused %used
&ZW4Y:M$\ Y0101782 15000960 00.00
*\5_$x^P3BqY0Logical Logging51Testing软件测试网].JdGzsl
Buffer bufused bufsize numrecs numpages numwrits recs/pages pages/io51Testing软件测试网2x3o#e3LR_ya
L-2 016 1111.01.0
w VgNG#|N0^0address number flagsuniqid beginsize used%used51Testing软件测试网'f||S~ly
8042de94 1U---C-L 110521a 7500 630 8.4051Testing软件测试网? I1{zr}
8042deb0 2F------ 0106f66 75000 0.0051Testing软件测试网r,?_"P/q1l
8042decc 3F------ 0108cb2 75000 0.00
$FZFl)?B4aZ oL08042dee8 4F------ 010a9fe 75000 0.00
p[)cZ8{X08042df04 5F------ 010c74a 75000 0.0051Testing软件测试网o#QW s(p:y
8042df20 6F------ 010e496 75000 0.0051Testing软件测试网7o6a4x^AM-Kw
其中:%USED: 使用百分比
n6X:_,Pi2q\p0FLAGS 字段的含义:51Testing软件测试网M~Cl5bY
F: 空闲 B:已备份 C: 正在接收事物记录
U@ip3Ko0U: 正在使用 A: 新增日志 L: 包含最后一个检查点
7y4VP~ d6P[+Dg0Tbstat - u:ONLINE的 用户情况51Testing软件测试网\!P Wf1h$N
Users
:Z?^-TY&L0address flags pid user tty waittout locks nreads nwrites
I.{$B |j1R0804019f4 ------D 329 root console 0 00 179 2
u,xH$Gkv080401a64 ------D 0 root console 0 00 0051Testing软件测试网:Tr2S-w(QU
80401ad4 ------F 330 root 0 00 0051Testing软件测试网-~;E nJO
3 active, 20 total
1I ETH+r0Transactions51Testing软件测试网)q{"P8d!b-i*ub(E3EU
address flags user locks log begin isolation retrys coordinator
r} |F@l%I&`?o0804022b4 A---- 804019f4 0 0 NOTRANS 051Testing软件测试网x%Wj(^x2[#o6U O q
804028d8 A---- 80401a64 0 0 NOTRANS 051Testing软件测试网/ZUm_P2Ci
2 active, 20 total
sj!WF^ e:w0其中:flages 字段的含义:
o k c[*Bz{.J0第一列:(S:等待 mutex;Y:等待条件;L:等待锁;B:等待缓冲区;51Testing软件测试网C5o rl'iw&o/[
C:等待检查点;X:长事务清理;G:等待长缓冲写;T:等待事务)51Testing软件测试网 vy6PHBv
第二列:(*:事务执行时,发生 I/O 错误)
~:edlYDU0第三列:(A:正在备份;B:操作已被记录在日志中;P:分布处理已准备好; 51Testing软件测试网~$xC*qscA
C:正在提交;R:正在回滚)51Testing软件测试网8g;Kg5u!w ve P]KuH
第四列:(P:会话的主线索)51Testing软件测试网0yC;baN}\^%Oo
第五列:(R:在read rsam 调用中;X:进程在关键分区)51Testing软件测试网&@cew?
第七列:(M:特殊监控;D:特殊线索;C:清理线索;F:特殊清页进程;
;R\1UNx2p2xy3`0B:特殊 B+ 树清页线索)51Testing软件测试网bC0ZwV u w
Tbstat -k :用户持有锁的情况51Testing软件测试网so.xk2q:Y
锁按照粒度分为6种:库锁、表锁、页锁、行锁、字节锁、键锁51Testing软件测试网8x&}_;L6Hcun"e
字节锁:更新包含有 VARCHAR 类型的行时,加在该行上的锁。51Testing软件测试网C k9YhWM5T;Nn
键锁:用于索引树上的锁。一般在相应字节上加删除标志。
.^l.[!jdj T0这几种锁的识别如下:
[S%[(Z)w+D4U0TYPETBLSNUM ROWID SIZE
d3X/tteu8kf\d4Z0库锁 HDR+X 1000002 205 0
3UE2z"?*G0表锁 100000e 00
]8__!bvQ\A0页锁 100 051Testing软件测试网-w9TG&U&R(R
行锁 101 51Testing软件测试网KG2s4V)r['u
字节锁 HDR+B 90951Testing软件测试网Pc6g)k!M3kE0EzK6GK"R
键锁 很大的 16 进制数
P0J+A:NL6C0锁的生命期:1、不使用事务时,操作完成即会释放对应的锁;51Testing软件测试网&g&O K$p8XK2_
TAG: informix