Thursday, January 19, 2012


I had to close an Oracle 11 database today to do a snapshot. When I tried to open it, I saw the following error message:
SQL> startup
ORA-00844: Parameter not taking MEMORY_TARGET into account, see alert log for more information
The database had a server parameter file so I created a parameter file from it:
SQL> create pfile from spfile;
File created.
Then I made a copy of the parameter file in case anybody wanted to see the problem (ANDREW is not the database’s real name BTW):
UNIX > cp initANDREW.ora initANDREW.ora.19thJan2012
I saw the following 2 lines (amongst others) in the parameter file. It looks as if Oracle has adjusted the sga_max_size to a value greater than memory_target but I could be wrong:
*.sga_max_size=536870912#internally adjusted
I changed the 2nd line as follows. I guess I should have removed the #internally adjusted, as it no longer applies, but I didn’t:
*.sga_max_size=400870912#internally adjusted
Then I recreated the server parameter file and the database opened OK:
SQL> create spfile from pfile;
File created.
SQL> startup
ORACLE instance started.
Total System Global Area  400965632 bytes
Fixed Size                  2089064 bytes
Variable Size             289415064 bytes
Database Buffers          104857600 bytes
Redo Buffers                4603904 bytes
Database mounted.
Database opened.

No comments: