Error de inicio de Oracle (no se pudo abrir el archivo de parámetros)

10

Instalé el servidor Oracle 11g en Ubuntu 12.10. Pero no puedo iniciar el servidor. Cuando inicio el servidor, se produce el siguiente error:

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'

¿Cómo puedo resolver este problema? Creo que la conexión falló porque el host u objeto de destino no existe. ¿Cómo se puede especificar un host de destino?

Corriendo:

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

devoluciones:

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

La ejecución echo $ORACLE_SIDno muestra nada: una línea vacía.

Praneeth Pj
fuente
ls initXE.oraNo volveremos initxe.ora. Unix distingue entre mayúsculas y minúsculas.
milagro173

Respuestas:

10

Veo dos cosas mal aquí. Oracle intenta abrir un archivo de parámetros en el directorio $ ORACLE_HOME / dbs con el formato "spfile" + $ ORACLE_SID + ".ora". Si no puede encontrarlo, intenta abrir "init" + $ ORACLE_SID + ".ora". Aquí es donde están los problemas.

En virtud del hecho de que Oracle está intentando abrir un archivo de parámetros llamado "initXE.ora", su SID debe ser (o fue en un punto) igual a "XE".

1) Esta es la parte fácil, así que intente esto primero. Dado que (en sus comentarios) echo $ORACLE_SIDno produce nada, intente configurarlo.

export ORACLE_SID=XE

Luego intente iniciar Oracle nuevamente.

2) En sus comentarios anteriores, muestra que el archivo se llama "initxe.ora". ¿Es ese realmente el nombre del archivo? ¿O pegó en un comentario de alguna manera en minúscula la salida del lscomando?

La razón por la que señalo esto es que Ubuntu (Linux) tiene un sistema de archivos sensible a mayúsculas y minúsculas. Entonces initxe.ora e initXE.ora son en realidad dos archivos diferentes. Entonces, si su comentario es correcto y el archivo está en minúsculas, en su lugar, querrá establecer su ORACLE_SID en "xe":

export ORACLE_SID=xe

Inténtalo y ve si funciona.

Aaron
fuente
6

Si se trata de un nuevo Oracle instalado y no tiene aquí el archivo de parámetros initXE.ora /u01/app/oracle/product/11.2.0/xe/dbs/, eso significa que primero debe crear XE DB. Para hacerlo, ejecute /u01/app/oracle/product/11.2.0/xe/bin/createdb.sh primero.

fen1ksss
fuente
En el clavo, gracias! El guión lleva años pero hace el truco. Sin embargo, debe ejecutarlo como usuario oracley tenga en cuenta que esto significa que también deberá restablecer las contraseñas del sistema / sys al hacerlo.
Forraje
1

Solía ​​enfrentar este problema.

Me di cuenta de que el error puede ser causado por el archivo no encontrado. Debe iniciar la instancia de Oracle utilizando un archivo p completamente referenciado emitiendo el siguiente comando:

SQL> startup pfile=<your pfile full path here>
Sophart Phun
fuente
0

Solo hazlo ls -altr. Si encuentras así ...

-rw-r - r-- 1 oracle oinstall 2637 13 de marzo init.ora

... solo cambie el propietario:, chown -R oracle:dba init.oraluego inicie.

Javed Moazzam
fuente
-1

encuentre "initXE.ora" en su directorio oracle y use:
SQL> startup pfile=<directory_name>/initXE.ora

Ata
fuente
Es posible que desee agregar algunos detalles sobre por qué esto funciona, o cuál es el problema con la pregunta del póster original.
Max Vernon