flag标志
在部分异常的情况下onstat –u可能显示很多进程处于关键状态,具体表现为--PX—状态,此时就要进行分析具体语句的原因,
address flags sessid user tty wait tout locks nreads nwrites
B Waiting for a buffer
C Waiting for a checkpoint
G Waiting for a write of the logical-log buffer
L Waiting for a lock
S Waiting for mutex
T Waiting for a transaction
Y Waiting for condition
X Waiting for a transaction cleanup (rollback)
当出现标注的红色情况,可能CPU资源利用率不高,语句也不是很负责,但是性能比较差,这里就需要根据标志的不同进行区别分析
l B标志
利用onstat –b 命令来查看具体等待那个buff,被那个session所持有
也可以利用onstat –X命令来查看,最终找到这个buff的持有者和类型
l L标志
利用onstat –k命令查看这个所资源被那个session所持有,这个锁资源锁定的是那个表
l G标志
代表log I/O上有瓶颈,可能是数据库采用了unbuffer log模式,或者是log的存储空间性能问题
l C标志
代表等待checkpoint的进程,该标志发生在checkpoint时间段内,如果checkpoint时间比较长,则可能有较多的该标志,这数据正常情况,但是要解决checkpoint时间长的问题
如果语句没有处于当前状态,而是在运行,则需要具体考虑语句的性能,是否走索引,是否全表扫描,是否关联方式有问题。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7836221/viewspace-670010/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7836221/viewspace-670010/