由于SGA大小在os上的限制导致数据库无法启动实例

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

以前只是知道ORACLE SGA在不同的平台上都有大小限制,需要手工解除这个限制,但是由于一直没有把SGA调整得太大,所以一直没有碰到过,但是一旦真得让我碰上了,竟有些不知所措,搞了半天才想起来是这个原因!

故障日期:2005.8.12

故障现象:早晨数据库无法启动。错误如下:

SVRMGR> startup nomount

ORA-27123: unable to attach to shared memory segment

SVR4 Error: 22: Invalid argument

Additional information: 1

Additional information: 41203

SVRMGR>

故障处理:为了保证系统尽快投入使用,暂时还原以前的参数文件

故障分析:昨天为了优化数据库,我修改了shared_pool_size和db_block_buffer,当时把db_block_buffer加大了,shared_pool_size调小了,但是总的来说sga是调大了,现在提示shared memory 错误,看来是shared_pool_size的大小有问题

实验如下:

当时Database Buffers 是1474560000 bytes,几乎等于1.38G, shared_pool_size当时摄制的是600M,这样再加上其它的内存分配,总的已经超过了2G;后来把shared_pool_size调整为550M就没问题了,此时

SVRMGR> startup nomount

ORACLE instance started.

Total System Global Area 2123047072 bytes

Fixed Size 73888 bytes

Variable Size 637911040 bytes

Database Buffers 1474560000 bytes

Redo Buffers 10502144 bytes

SVRMGR>

SGA=2123047072 bytes=1.977G

看来Solaris下oracle sga的限制为2G,以后需要想办法调整这个限制

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有