ORA00371: not enough shared pool memory, should be atleast 62198988 bytes

问题如下:

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.


作者:czjie
出处:http://www.cnblogs.com/czjie/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/czjie/p/2237060.html