问题:
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.__or