日期:2014-05-16  浏览次数:20576 次

如何确定 redo log file 大小


Oracle10g默认的redo log file大小为50m,在使用中经常会发现alter log里存在大量Checkpoint not complete的问题。

这个问题大家应该都清楚是什么,要解决无非就要增加redo log file的大小,但是增加到多少比较合适呢? 其实估测的方法很简单,10g可以使用awr(9i使用statspack)对一个稳定运行周期生成报表,具体周期要看db的使用情况。

Load Profile Per Second Per Transaction Redo size: 173,302.31 470,896.98

根据报表给出的数据,redo size 每秒是173k,而对redo log的建议一般是每小时切换2-3次,就以20分钟切换一次为例,redo log file的大小就应该设置为 redo size x 60 x 20 即 173k x 60 x 20,所以redo log file的大小应设置为208m,空间比较充足的可以设置富裕一些。 当然,10g可以使用ADDM来自动完成以上的诊断步骤,不过ADDM并不是每次都能诊断出所有的问题(也许是我用的不得当),感觉还是看awr报表比较容易发现问题.

另一处理方法:   设置redolog文件的原则就是要保证30分钟之内进行logswitch.   logswitch的信息被记录在alertSID.log中。    如果两次switch的时间是10分钟,你需要增加redolog文件到三倍的尺寸。   如果两次switch的时间是15分钟,你需要增加redolog文件到两倍的尺寸。   如果两次switch的时间超过30分钟,你不需要需要增加redo log文件的尺寸。