11g启动报错ORA-00371: not enough shared pool memory

问题:
11g的一个库,启库时,报错shared pool不够。由于我是在一个测试的机器上,我不需要那么多的share pool,我只需800M的shared pool就够了。
但指定shared pool的大小为800M在初始化文件中,起库就报错:

SQL> startup
ORA-00371: not enough shared pool memory, should be atleast 2138663491 bytes

解决:
加个processes参数就可以了。我目前加了processes=1000.其他的参数我没动。
原因估计是新机器的cpu core很多,如果没有设置process,process的默认值可能根据cpu的数量来估算,会是一个很高的值,进一步造成oracle认为需要很多shared pool。因此启动时候报错如果小于2G shared pool,就启动不了。

SQL> startup nomount pfile='?/dbs/initt1spmit.ora';
ORACLE instance started.

Total System Global Area 2690564096 bytes
Fixed Size                  2161944 bytes
Variable Size            1191183080 bytes
Database Buffers         1342177280 bytes
Redo Buffers              155041792 bytes
SQL>
z4cs2021:t1spmit > cat initt1spmit.ora
t1spmit.__oracle_base='/paic/t1spmit/rdbms/oracle'#ORACLE_BASE set from environment
*.audit_file_dest='/paic/t1spmit/rdbms/oracle/admin/t1spmit/adump'
*.control_files='/paic/t1spmit/data01/oradata/t1spmit/control01.ctl'
*.db_cache_size=1342177280
*.db_name='t1spmit'
*.diagnostic_dest='/paic/t1spmit/rdbms/oracle'
*.java_pool_size=134217728
*.large_pool_size=83886080
*.local_listener='(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.31.9.12)(PORT=1534)))'
*.pga_aggregate_target=536870912
*.shared_pool_reserved_size=83886080
*.shared_pool_size=800m
*.streams_pool_size=134217728
processes=1000

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据