解決ORA--27100 shared memory realm already exists報錯

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章