ORA-56752 & ORA-01078 for ORACLE DATABASE EXPRESS EDITION

This is the case of facing the two errors above during an Oracle APEX installation.

I wanted to install Oracle APEX 21.1 along with the ORDS to test some applications.
Since I did not need it for anything major, I installed an Oracle Database Express Edition (XE) in my Virtual Machine.

One of the steps before installing APEX is to check and increase the SGA.
I checked the SGA and it was by default 1536M.
So I increased the memory with the below command:
ALTER SYSTEM SET MEMORY_TARGET = 5000M SCOPE=SPFILE;

Since it was altered with the scope SPFILE, it would need the database to restart before applying the memory changes.

Unfortunately, I had forgotten that Oracle Database Express Edition has limitations on the memory (can go up to 2G maximum).

So after the shutdown of the DB, when I tried to start it up again I got the below error: ORA-56752: Oracle Database Express Edition (XE) memory parameter invalid or not
specified

ORA-01078: failure in processing system parameters

As I mentioned this is due to the memory limitations of XE and since I increased it in the SPFILE, now Oracle could not initialize and start up normally.

The solution to this is to change the memory back to what is allowed for this edition.
Since, the Oracle database is not started yet, this cannot be done via an ALTER command again. The database must be initialized and started with the appropriate memory.

There are 2 ways to do this:

1)Find the pfile (init.ora) and startup the database based on the pfile.
e.g. :
SQL> startup pfile=C:\app\Admin\product\21c\admin\XE\pfile\init.ora.92620211842

2)Find the pfile and create a new SPFILE for the database to startup normally.
e.g. :
SQL> create spfile from pfile=’C:\app\Admin\product\21c\admin\XE\pfile\init.ora.92620211842′
SQL>startup


Written by Nikos Minaidis
28/12/2021

Σχολιάστε