Archive for July 9th, 2008

我的一些分析

Wednesday, July 9th, 2008

今天一个QQ朋友告诉我,他的数据库有点问题,’Checkpoint not complete’。我叫他ALTER文件传过来,下面是我的一些分析:
1:日志切换太频繁,几乎是1分钟不到,就切了(还是归档模式,50M一个)。建议加大日志组成员,另建议问问开发,到底在跑什么?因为晚上11点的LOG,还是很频繁;
2:他说查询很慢,我看了ALTER文件,发现才1.1G的SGA,data buffer就1G,但是PGA倒是有400多M,
如果内存不多的话,还不如PGA小点,多给点databuffer.
我不相信,他的数据库命中率有100%,估计也不可能,因为写日志太频繁了,根据LRU来说,总是有写data buffer要换进换出。
PS:因为我只看到了ALTER文件,所以只能这样定性了。人家没给STATSPACK。
好像有点武断的成分,但是确实也只能这样了。

ORACLE RAW类型的存储

Wednesday, July 9th, 2008

最近我管的数据库,上了一套新的系统:《工作流引擎――JBPM》。表上使用了一种很孤僻的类型: RAW。
开发就是把一个对象直接存入到DB里了,额的神啊。。。。这样设计上是方便了,DB这边就不方便了啊。说实话,用不用RAW类型,Donny和我最最关心的还是数据本身的存储,担心RAW和LOB类型的字段一样,存储在别的Segment上。验证了下一下,这种担心不必了。验证如下:
@>SELECT DISTINCT segment_type FROM user_segments;
SEGMENT_TYPE
——————
INDEX
TABLE
@>desc JBPM_BYTEBLOCK
 Name                                                                                Null?    Type
 ———————————————————————————– ——– ——————————————————–
 PROCESSFILE_                                                                        NOT NULL NUMBER(19)
 BYTES_                                                                                       RAW(1024)
 INDEX_ 
 

DBA