I'm trying to set up a database on a Solaris 10 platform that had its database corrupted before. Due to the lack of backups, I was forced to reinstall Oracle server. Currently I'm facing an issue where answers I have found keep sending me in loops.
I opened sqlplus, and saw that it was connected to an idle instance, so I performed the STARTUP
command. This led me to the following errors:
ORA-48108: invalid value given for the diagnostic_dest init.ora parameter
ORA-48140: the specified ADR Base directory does not exist
[/export/home/oracle/u01/app/oracle/product/11.2.0/dbhome_1/dbs/<ORACLE_BASE>]
So after some googling, I was told to try changing the diagnostic_dest via the following: ALTER SYSTEM SET diagnostic_dest='u01/app/oracle';
, which was equivalent to setting the diagnostic_dest
to my ORACLE_BASE
.
However, the error below occurred:
ORA-01034: ORACLE not available
After some googling again, I found that the solution was to start the database (which I can't)! I have no idea how I should proceed from here. Any help will be much appreciated. If any other information is required, I will gladly update it in the OP.
I have tried restarting lsnrctl
, but it doesn't seem to help.
I would change all the default parameters within the file locations, but from what I found, the init.ora file which was supposed to be used already has diagnostic_dest='<ORACLE_BASE>'
, the spfile.ora file also has diagnostic_dest='/u01/app/oracle'
. I'm really lost as to how I should carry on.
Best Answer
You can not use
ALTER SYSTEM
when the instance is not started, but you can not start the instance because of an incorrect parameter value. Create a PFILE (if you do not already have one), edit that, then start the instance.Set the value of diagnostic_dest as required, then save the file.
Note: the directory must exist.
Answer to comment:
Or, for a test, you can startup the instance by manually specifying the pfile, for example: