刚才客户电话过来说有个数据库起不来了,开发商搞了好久搞不掂,得要让我们去帮忙看看。过去到现场,发现数据库无法打开,连nomount模式都不可以。报错的内容大致如下:
ORA-27102: out of memory
OSD-00031: ?????????????????
O/S-Error: (OS 8)?????????????
第一感觉是开发商是不是自己去调整了内存,搞得太大,导致启动时内存分配不足了。看到用户有每天采用RMAN备份,于是从RMAN备份中还原了一份PFILE来进行更改。看了一下配置,分了3G多内存给数据库,服务器的操作系统是32位的2003,内存有8G,根本就用不起来。为了确定问题的原因,直接将memory_max_target调整到了600M,然后重启数据库,发现异常内容依旧,没有任何改变。看来,ORACLE报出来的异常并不是真正反映问题的根源了。只好上MY ORACLE SUPPORT去寻找一下相关的案例看看了,在(文档 ID 225349.1)中找到了参考。
内容主要如下:
AWE can be enabled at the OS by adding the /PAE switch to the BOOT.INI file as in:
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Advanced Server" /PAE
It is possible to have BOTH the /PAE and /3GB switch in place on the same machine, like in:
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Advanced Server" /3GB /PAE
通过在boot.ini中添加了/3GB /PAE,并重启操作系统后,问题得到了解决。客户对系统进行了恢复测试,一切正常。OK,搞掂收工,明天应该可以安心回家扫墓了。