ORA--27100

ORA--27100

决ORA--27100 shared memory realm already exists报错

分类: 各种ORA-报错 2011-05-19 15:49  1220人阅读  评论(0)  收藏  举报
integer sql 数据库 oracle windows system

OS环境:windows PC

数据库版本:oracle 10.0.2.1

 

这是一次小打小闹的报错,原因是帮同事改他自己玩的测试库sga,原sga_max_size大小为600M,我修改为2G,重启时报错。

 

ORA-27100 shared memory realm already exists

 

通过查询官方文档,解释该原因是因为windows pc 32位机最大支持分配oracle内存为1.7G,所以导致报错,这是一次缺少经验的教训。

 

解决案例:

  

1:SQL> show parameter sga

     NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
     lock_sga                             boolean     FALSE
     pre_page_sga                    boolean     FALSE
     sga_max_size                    big integer 568M
     sga_target                         big integer 568M

 

2:SQL> alter system set sga_max_size=2048m scope=spfile; -将SGA设置为2G

     SQL> alter system set sga_target=2048m scope=spfile;

 

3:SQL> shutdown immediate  -重启数据库报错

     SQL> startup

 

     ORA-27100 shared memory realm already exists

     OSD-00029: ????????????
     O/S-Error: (OS 8) ??????????????????????????????     

 

4:SQL> create pfile from spfile; -使用spfile生成pfile,修改参数文件内的以下两个参数,

    将参数调小。

     *.sga_max_size=600000000
     *.sga_target=600000000

 

5:SQL> startup pfile='E:/oracle/product/10.2.0/db_1/database/INITorcl.ORA' -这时候启动

     依然报错,这是因为windows机器需要重启后台服务,否则无法生效(郁闷)
     ORA-27100 shared memory realm already exists

     OSD-00029: ????????????
     O/S-Error: (OS 8) ??????????????????????????????

 

7:找到管理/服务/OracleServiceORCL 重启

 

8:SQL> startup pfile='E:/oracle/product/10.2.0/db_1/database/INITorcl.ORA'
     ORACLE 例程已经启动。

     Total System Global Area  603979776 bytes
     Fixed Size                  1250428 bytes
     Variable Size             163580804 bytes
     Database Buffers          432013312 bytes
     Redo Buffers                7135232 bytes
     数据库装载完毕。
     数据库已经打开。

 

9:SQL> create spfile from pfile; -根据启动的pfile生成spfile,下次启动时候则主动读取spfile

     参数文件

     SQL> startup force
     SQL> show parameter spfile

     NAME                                 TYPE        VALUE
     ------------------------------------ ----------- ------------------------------
     spfile                               string      E:/ORACLE/PRODUCT/10.2.0/DB_1/
                                                 DATABASE/SPFILEORCL.ORA
     SQL> show parameter sga;

     NAME                                 TYPE        VALUE
     ----------------------------------- ----------- ------------------------------
     lock_sga                             boolean     FALSE
     pre_page_sga                      boolean     FALSE
     sga_max_size                      big integer 576M
     sga_target                          big integer 576M

你可能感兴趣的:(ORA--27100)