EDU511 国际专业IT教育服务门户
设为首页   加入收藏    联系我们
寻找IT教育内容合作伙伴
招聘教育网络编辑和运营门户高手
中讯IT教育2008年改版上线
寻找地方站运营伙伴QQ:59955917
中讯IT 技术成就未来
   你现在的位置:首页 >> 新闻系统 >> 数据库 >> Informix >> 基础教程 >> 正文

INFORMIX数据库系统安装手册

 
 
日期:08-06-02 23:09:45 点击: 来源:中讯IT
 
监控ONLINE系统后动情况的工具主要有以下三类:
 系统监控接口(SMI)
 tbstat
 tbcheck

一、 系统监控接口(SMI):
  我们主要通过SQL命令操作online的内部数据库sysmaster中的内部表/结构,来获取有关的维护信息。Sysmaster是在online初次初始化时,系统自动创建的。它实际主要存储了一些数据结构,而不是真正的表。使用SMI有如下限制:
 不能对SMI中的表加锁或使用隔离级别。
 不允许使用insert,delete,update等语句(只读)
 不能使用dbschema,dbexport等命令
 使用select rowid语句将会产生不可预料的结果
主要的SMI表有:
sysdatabases:online中的数据库信息
systabnames:某数据库中所有表的信息
syslogs:逻辑日志信息
sysdbspaces:数据库信息
syschunks,syslocks等
例1:显示处于脱机(offline)状态的chunk的序号和所在数据库空间
Select chknum,dbsnum from syschunks where is_offline=1 or misline=!
例二:显示满chunk的信息
Select chknum,dbsnum from syschunks where nfree=0
二、 TBSTAT
 列出当前时刻的信息(实际也是读取SMI表)
 不需要磁盘I/O
 不需要锁等系统资源,因此不会影响系统性能

用法: tbstat [-abcdklmpstuzBDFPRX] [-r seconds] [-o file] [infile]

  -a   print all info (options: bcdklmpstu)
  -b   print buffers(缓冲区)
  -c   print configuration file(配置文件)
  -d   print dbspaces and chunks(dbspace和chunk)
  -k   print locks(锁)
  -l   print logging(日志)
  -m   print message log(消息日志)
  -p   print profile(profile文件)
  -s   print latches(门闸)
  -t   print tblspaces(表空间)
  -u   print users(用户)
  -z   zero profile counts
  -B   print all buffers
  -D   print dbspaces and detailed chunk stats
  -F   print page flushers(页刷新进程)
  -P   print profile, including BIGreads
  -R   print LRU queues(LRU队列)
  -X   print entire list of sharers and waiters for buffers
  -r   repeat options every n seconds (default: 5)
  -o   put shared memory into specified file (default: tbstat.out)
infile use infile to obtain shared memory information

三、 几个常用的tbstat选项:
 tbstat -m :显示消息日志的最后20行.
消息日志的内容包括:
1)、检查点信息
2)、读写错误信息
3)、ONLINE模式转换信息
4)、长事务
5)、日志文件满(LOG FILE FULL )
若想显示完整信息,可直接编译消息日志文件.
 Tbstat -d:磁盘空间的使用情况,包括DBSPACE和CHUNK的信息
例:RSAM Version 5.03.UC1  -- On-Line -- Up 09:45:41 -- 816 Kbytes

Dbspaces
address number  flags  fchunk  nchunks flags owner  name
8040a244 1    1    1    1   N   informix rootdbs
1 active, 8 total

Chunks
address chk/dbs offset  size   free   bpages  flags pathname
80409d84 1  1  0  300000  231871      PO- /dev/rdata
1 active, 8 total              
其中的FREE项,显示了该CHUNK的空闲空间大小(Kbytes).
 Tbstat -l :日志文件情况
Physical Logging
Buffer bufused bufsize numpages numwrits pages/io
 P-2 0    16    0    0    0.00
   phybegin physize phypos  phyused %used
   101782  15000  960   0    0.00

Logical Logging
Buffer bufused bufsize numrecs numpages numwrits recs/pages pages/io
 L-2 0    16    1    1    1  1.0    1.0

address number  flags  uniqid  begin    size   used  %used
8042de94 1    U---C-L 1    10521a    7500   630   8.40
8042deb0 2    F------ 0    106f66    7500    0   0.00
8042decc 3    F------ 0    108cb2    7500    0   0.00
8042dee8 4    F------ 0    10a9fe    7500    0   0.00
8042df04 5    F------ 0    10c74a    7500    0   0.00
8042df20 6    F------ 0    10e496    7500    0   0.00
                              
其中:%USED: 使用百分比
FLAGS字段的含义:
F: 空闲 B:已备份 C: 正在接收事物记录
U: 正在使用 A: 新增日志 L: 包含最后一个检查点
 Tbstat - u:ONLINE的用户情况
Users
address flags  pid   user   tty   wait  tout locks nreads  nwrites
804019f4 ------D 329   root   console 0    0  0   179   2
80401a64 ------D 0    root   console 0    0  0   0    0
80401ad4 ------F 330   root       0    0  0   0    0
3 active, 20 total

Transactions
address flags user   locks log begin isolation retrys coordinator
804022b4 A---- 804019f4 0   0     NOTRANS  0
804028d8 A---- 80401a64 0   0     NOTRANS  0
2 active, 20 total  
其中: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+树清页线索)
 Tbstat -k :用户持有锁的情况
锁按照粒度分为6种: 库锁、表锁、页锁、行锁、字节锁、键锁
字节锁:更新包含有VARCHAR类型的行时,加在该行上的锁。
键锁:用于索引树上的锁。一般在相应字节上加删除标志。
这几种锁的识别如下:
    TYPE  TBLSNUM  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),可升级锁**)
 tbstat -p : 显示系统资源状况(是否充分)
Profile
dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached
181  199   358   49.44  7   8    2    0.00

isamtot open start  read  write rewrite delete  commit  rollbk
3   1   1   0   0   0   0    1    0

ovtbls ovlock ovuser  ovbuff  usercpu syscpu  numckpts flushes
0    0    0    0    0.00   0.00   2    239

bufwaits lokwaits lockreqs deadlks dltouts lchwaits ckpwaits compress
0    0    0    0    0    0    0    0 
OVTBLS:指示TBLSPACE值不够 ,TBLSPACES值应增大
OVLOCK:锁溢出  LOCKS应增大
OVUSER:用户表资源不够  USERS
OVBUF:缓冲区资源不够   BUFFERS
以上数字若持续增加,表明相应参数值应调整
DEADLOCKS:检测到的死锁数
DLTOUTS:网络超时死锁
DEADLOCK_TIMEOUT:一般为60秒,若增大此数字,可以减少死锁数,但会增加响应时间,用户看来性能更差;若减少此数字,死锁数可能会增大,但会减少响应时间,在用户看来,响应时间变快了。

四、 ONCHECK:
 定位并修复数据与索引的不一致
 检查磁盘上的数据结构
 显示不同数据结构的报告
 某些选项可能回在它所涉及的表上家一个共享锁
用法: tbcheck [-clist] [-plist] [-qny]
    [ { database[:[owner.]table] | TBLSpace number | Chunk number }
      { rowid | page number } ]

-c   - check(检查)
  r  - reserved pages(保留页)
  e  - TBLSpace extents and chunk extents
  c  - database catalogs(目录)
  i  - table indexes(表的索引)
  I  - table indexes and rowids in index(表的索引和索引的rowid)
  d  - TBLSpace data rows including bitmaps(表空间的数据行包括位图)
  D  - TBLSpace data rows including bitmaps, remainder pages and blobs
                    
-p   - print(显示)
  r  - reserved
 
责任编辑:
 
前一篇:
后一篇:
相关新闻(文章)

登录模块加载中...
   热点数据库教程
友情链接
重庆之窗 | 重庆IT教育 | 我爱论文网 | 涪陵课件园 | 中国教育导航 | 第一教育网 | 中华IT培训网 
百度网址大全   重庆电脑维修网   华育国际教育 maple story   中国销售培训网    更多友情链接>>>
地址:重庆渝中区大坪正街88号 Copyright © edu511.com All rights reserved.
本站建设得到北京泰胜得风险投资机构、重庆网通信息港、平全教育服务中心与的大力支持            重庆视网科技发展有限公司版权所有 邮编:400041
电话:023-61630611 15902314551            ICP备案号:渝ICP备08002346号 QQ:59955917       邮箱:sysium_yuh@126.com yuhong@edu511.com