Cuando instalamos una BDD es posible que no configuremos el Enterprise Manager (EM) pensando que no lo usaremos. Esto suele pasar cuando tiene el EM local de la 9i, o el EM Console, y no te quieres complicar la vida instalando estos servicios (que consumen lo suyo en el servidor) en cada BDD. Sobretodo si tienes una media de 5 por servidor :P
Ahora nos hemos encontrado con que un proyecto "necesita" esta consola, asi que se la tenemos que configurar. Lo bueno es que estos pasos no requieren parar la BDD :)
Antes de hacer nada, hemos de tener configurado bien las variables de entorno:
- ORACLE_HOME=[Path oracle home]
- ORACLE_SID=[SID]
- ORACLE_UNQNAME=[SID]
Para arrancar el EM solo tenemos que ejecutar el siguiente comando:
$ORACLE_HOME/bin/emctl start dbconsole
Si no tenemos configurado el EM esto nos dará un error como el siguiente:
OC4J Configuration issue.
/<ORACLE_HOME>/oc4j/j2ee/OC4J_DBConsole_<HOSTNAME>_<DBNAME> not found.
Basciamente nos está diciendo que no tiene la configuración de esta BDD para poder arrancar el EM. Así que tenemos que crearla... Para eso, solo tenemos que lanzar el siguiente comando:
$ORACLE_HOME/bin/emca -config dbcontrol db -repos create
Esto te pedirá el password del usuario SYS, DBSNMP y SYSMAN (este lo creará nuevo) y el puerto del listener.
Es posible que ya existan datos de repositorio. si es así, al crear la configuración nos dará un error. Si miramos el log que nos indica veremos que hay un ORA-20001.
Para solucionar esto, simplemente tenemos que borrar el repositorio y crearlo de nuevo. Para borrar el repositorio, ejecutamos el siguiente comando:
$ORACLE_HOME/bin/emca -deconfig dbcontrol db -repos drop
Después de un rato, nos dirá que se ha eliminado completamente. Ahora ya podemos crearlo con el comando del principio.
Si tenemos algún otro problema, yo recomendaría visitar el Metalink ;)
Salud!