You are currently viewing ORA-27104: system-defined limits for shared memory was misconfigured

ORA-27104: system-defined limits for shared memory was misconfigured

I moved a VMware’s VM to an new machine, and the new machine have limited physical memory , So I decreased the VM memory.

and then I found that at VM , ORACLE failed to start automatically.

and when I start it manually, I found below ORA-27104 error:

So to fix this, first find the oracle alert log, here is my location.

/opt/oracle/diag/rdbms/orclcdb/ORCLCDB/alert/log.xml

It shows that SGA is big than VM’s memory. So this is the reason why Oracle can not start.

So login as oracle, create pfile.

sqlplus / as sysdba
create pfile='/opt/oracle/product/19c/dbhome_1/dbs/init20240903.ora' from spfile;

then modify /opt/oracle/product/19c/dbhome_1/dbs/init20240903.ora , make sure all memory is not higher than VM memory 7656MB.

and start oracle using modified pfile.

startup pfile='/opt/oracle/product/19c/dbhome_1/dbs/init20240903.ora';

and from pfile create spfile again.

create spfile from pfile='/opt/oracle/product/19c/dbhome_1/dbs/init20240903.ora';
shutdown immediate;

Then use spfile , oracle can be normally started.

sqlplus / as sysdba
startup;

Leave a Reply