11

I installed the Oracle 11g server on Ubuntu 12.10. But I can't start the server. When I start up the server, the following error occurs:

SQL> startup ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/xe/dbs/initXE.ora' 

How can I solve this issue? I think the connect failed because target host or object does not exist. How can a target host be specified?

Running:

$ ls -latr /u01/app/oracle/product/11.2.0/xe/dbs/initXE.ora 

returns:

-rw-r--r-- 1 oracle dba 2637 Mar 13 17:07 /u01/app/oracle/product/11.2.0/xe/dbs/initxe.ora 

Running echo $ORACLE_SID displays nothing - an empty line.

1
  • 1
    ls initXE.ora will not return initxe.ora. Unix is case sensitive. Commented May 24, 2014 at 22:29

8 Answers 8

13

I see two things wrong here. Oracle tries to open a parameter file in the $ORACLE_HOME/dbs directory with the format "spfile" + $ORACLE_SID + ".ora". If it cannot find it, it then tries to open "init" + $ORACLE_SID + ".ora". This is where the problem(s) are.

By virtue of the fact that Oracle is trying to open a parameter file named "initXE.ora", your SID must be (or was at one point) equal to "XE".

1) This is the easy part, so try this first. Since (in your comments) doing an echo $ORACLE_SID yields nothing, try setting it.

export ORACLE_SID=XE 

Then try starting Oracle again.

2) In your comments above, you show the file is named "initxe.ora". Is that really the name of the file? Or did your paste into a comment somehow lowercase the output of the ls command?

The reason I point this out, is that Ubuntu (Linux) has a case-sensitive filesystem. So initxe.ora and initXE.ora are actually two different files. So if your comment is correct and the file is lower-cased, you'll want to set your ORACLE_SID to "xe" instead:

export ORACLE_SID=xe 

Try that, and see if it works.

0
6

If this is a new installed Oracle and you do not have initXE.ora parameter file here /u01/app/oracle/product/11.2.0/xe/dbs/, that means you need to create XE DB first. To do that run /u01/app/oracle/product/11.2.0/xe/bin/createdb.sh script first.

1
  • Spot on, thank you! The script takes ages but does the trick. You need to run it as user oracle though and do note that this means you will have to reset the system/sys passwords afterwards as well when doing this. Commented Oct 3, 2017 at 7:47
2

I used to face this issue.

I realized that the error can be caused by the pfile not being found. You have to start the Oracle instance using a fully referenced pfile by issuing the following command:

SQL> startup pfile=<your pfile full path here> 
0

Just do ls -altr. If you find like this ...

-rw-r--r-- 1 oracle oinstall 2637 Mar 13 init.ora

... just change the owner: chown -R oracle:dba init.ora, then startup.

0
0

Also, check if the name of the file exactly is '/u01/app/oracle/product/11.2.0/xe/dbs/initxe.ora'.

In my case it was ''/u01/app/oracle/product/11.2.0/xe/dbs/initxe_Default.ora' so just renamed it and it worked!

0

I am adding my case as possible answer, even if the issue is isolated and explained by the currently accepted one.

In my case the error text was :

SQL> startup ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/u01/app/oracle/product/19.3.0/dbs/initFOO.ora' 

I had created a database with name "FOO", specifically in upper case, on a RHEL 8.4 server using Oracle version 19.3.

I verified the presence of the file /u01/app/oracle/product/19.3.0/dbs/initFOO.ora but I found /u01/app/oracle/product/19.3.0/dbs/initfoo.ora

So I thought of setting a different SID but to run with success the sqlplus command

sqlplus / as sysdba 

to connect to the idle instance of the DB I had to set the SID as below

export ORACLE_SID=FOO 

If I tried to set it as

export ORACLE_SID=foo 

it would result in

ERROR: ORA-12547: TNS:lost contact 

Then my solution was to symlink the file /u01/app/oracle/product/19.3.0/dbs/initFOO.ora to /u01/app/oracle/product/19.3.0/dbs/initfoo.ora

-2

In my case the file initXE.ora parameter file, was not at all present in the location. But in the pfile/init.ora there was entry for my DB, used the following command to start the db. My oracle db name = FIRCO62

startup pfile=C:\Oracle12c\oradata\admin\FIRCO62\pfile\init.ora

-3

find "initXE.ora" in your oracle directory and used :
SQL> startup pfile=<directory_name>/initXE.ora

1
  • You might want to add some details about why this works, or what the problem is with the original poster's question. Commented Jan 1, 2014 at 20:48

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.