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

发表于:2007-06-07来源:作者:点击数: 标签:
以前只是知道ORACLE SGA在不同的平台上都有大小限制,需要手工解除这个限制,但是由于一直没有把SGA调整得太大,所以一直没有碰到过,但是一旦真得让我碰上了,竟有些不知所措,搞了半天才想起来是这个原因! MI LY: 宋体; mso-ascii-font-family: 'Courier N
以前只是知道ORACLE SGA在不同的平台上都有大小限制,需要手工解除这个限制,但是由于一直没有把SGA调整得太大,所以一直没有碰到过,但是一旦真得让我碰上了,竟有些不知所措,搞了半天才想起来是这个原因!

MILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'">故障日期: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_sizedb_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

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

……………………………………………………………………………………………………………………………………………………………………………………………………………………

原文转自:http://www.ltesting.net