onstat -g ath
查看相关的poll监听线程是否启动
$ onstat -g ntd
查看接收和拒绝的次数
$ onstat -g ntu
查看用户启动的sqlexec线程读写的情况
$ netstat -a
看连接监听的端口是否有效
l检查用户SQL语句是否正常
$ onstat -u 查看用户连接ID号
$ onstat -g ses id 查看用户的内存分配情况、用户启动的线程数、用户是否用到临时表空间
$ onstat -g sql id 查看用户的SQL语句和执行结果是否有错误
$ onstat -k 查看用户的使用锁情况
$ onstat -x 查看用户的事物处理情况
$ onmoe -z id 杀掉不正常的用户session
相关的参数衡量指标
4、读写的命中率
$ onstat –p
dskreads pagereads bufreads %cached dskwrits pagwrits bufwrits %cached
450 1083 1893 97.62 586 1217 8076 92.74
查看参数读的命中率98%以上,调整 BUFFERS
写的命中率85%以上,调整LRUS , LRU_MAX_DIRTY , LRUS_MIN_DIRTY , CKPTINTVL , PHYSLOG
5、内存LRU的管理
$ onstat -R
$ onstat -F
Fg Writes LRU Writes Chunk Writes
11 318 201
调整:
LRU_MAX_DIRTY
LRU_MIN_DIRTY
LRUS
控制在checkpoint时的写的数据页数
(BUFFERS / LRUS) * LRU_MAX_DIRTY 时checkpoint时写的最大数据量
6、checkpoint的时间
$ onstat -m
$ onstat -g iof
$ onstat -D
调整写盘数据量(同2,调整LRU方法)
调整数据的分布情况,分布在不同的disk driver上
7、物理日志和逻辑日志缓冲区的利用率
$ onstat -l
Physical Logging
Buffer bufused bufsize numpages numwrits pages/io
P-1 0 16 265 21 12.62
phybegin physize phypos phyused #used
100107 1000 266 0 0.00
Logical Logging
Buffer bufused bufsize numrecs numpages numwrits recs/pages pages/io
L-2 0 16 6766 394 28 17.2 14.1
...
调整目标是将日志的buffer利用率调整为 (pages/io)/bufzise = %75的比例
调整参数 phybuff / logbuff ,比%75小,减小phybuff、logbuff;比%75大,调大
8、预读的性能
$ onstat -p
调整目标
将 (ixda-RA + idx-RA + da-RA) = RA-pgsused
调整参数:RA_PAGES 和 RA_THRESHOLD
其他提高数据库性能的方法
9、使用常用表长驻内存
set table table_name memory_resident | no_resident ;
$ onstat -P 查看
10、SQL语句进行词法预分析方法
set explain on ;
执行相应的SQL语句
检查当前目录下的sqexplain.out文件
分析词法优化器使用的路径是否合理
分析执行的效率方法
$ time dbaccess airgen_cm_db sel_cnt.sql
Database selected.
(sum)
1156215
1 row(s) retrieved.
Database closed.
real 0m0.12s
user 0m0.05s
sys 0m0.01s
11、表不12、带日志方法
将表的索引、以及constrain等条件全部删除后,执行以下SQL语句
alter table table_name type (raw|standard)
13、使用Informix最快的数据转移工具HPL倒数据
$ onpladm 命令行方式定义数据库表的输出或输入关系
文档参考$INFORMIXDIR/release/en_us/0333/onpladm/index.html
$ onpladm create project stores7 -d /tmp/stores7 -D stores7 建立所有的load和unload数据到onpload数据库中
$ onpladm run project stores7 –fu 将数据库stores7数据unload出来
$ onpladm run project stores7 –fl 将数据库stores7数据load入
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21634752/viewspace-616188/
,如需转载,请注明出处,否则将追究法律责任。