問題如下:
ORA-00371: not enough shared pool memory, should be atleast 62198988 bytes
解決過程:
方法一:
首先確認'$ORACLE_HOME/dbs/spfileORCL.ora’下是否存在此檔案,注意執行個體的大小寫,如果存在spfileorcl.ora,則僅需修改一下檔案名稱為spfileORCL.ora問題即可解決;
方法二:
1)先從pfile啟動
SQL> startup nomount pfile='/opt/ora10g/product/10.2.0/db_1/admin/orcl/pfile/init.ora.105201102812';
ORACLE instance started.
Total System Global Area 218103808 bytes
Fixed Size 1218604 bytes
Variable Size 71305172 bytes
Database Buffers 142606336 bytes
Redo Buffers 2973696 bytes
2)從spfile建立新的pfile檔案,(後面建立spfile時需要用到此檔案)
SQL> create spfile='/opt/ora10g/product/10.2.0/db_1/dbs/spfileORCL.ora' from pfile='/opt/ora10g/product/10.2.0/db_1/admin/orcl/pfile/init.ora.20111105';
File created.
注意:如果在資料庫安裝目錄下的dbs目錄中沒有找到spfile.ora檔案,可以到目錄下的database目錄中尋找。*spfile檔案一般為SPFILE執行個體名.ora...如我的執行個體名是ORCL,那麼我的spfile檔案為spfileORCL.ora。
3)pfile建立好之後,可以將裡面的shared_pool_size修改為你需要的大小。
4)關閉資料庫,從建立的pfile檔案啟動
SQL> shutdown immediate
SQL> startup pfile='/opt/ora10g/product/10.2.0/db_1/admin/orcl/pfile/init.ora.20111105'
ORACLE instance started.
Total System Global Area 218103808 bytes
Fixed Size 1218604 bytes
Variable Size 71305172 bytes
Database Buffers 142606336 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
5)從修改之後的pfile檔案建立spfile.
SQL> create spfile='/opt/ora10g/product/10.2.0/db_1/dbs/spfileORCL.ora' from pfile='/opt/ora10g/product/10.2.0/db_1/admin/orcl/pfile/init.ora.20111105';
File created.
6)關閉重啟,問題解決
SQL> shutdown immediate
SQL> startup
ORACLE instance started.
Total System Global Area 218103808 bytes
Fixed Size 1218604 bytes
Variable Size 71305172 bytes
Database Buffers 142606336 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.