Debemos hacer lo siguiente en Opensuse como ROOT:
1) Editar el archivo el archivo /etc/oratab
En dicho archivo tendremos que poner algo similar a esto =
miinstancia:/home/dieguz/oracle/product/10.2.0/db_1:Y
Su sintaxis es
[instancia]:[ORACLE_HOME]:[Y o N]
La N indica que no queremos que se arranque automáticamente. La Y indica que queremos que se arranque automáticamente.
2) Creamos el archivo /etc/init.d/oracle como ROOT (desde consola podemos ejecutar cat > /etc/init.d/oracle ) :
#!/bin/sh
# chkconfig: 345
# descripcion: Oracle auto start-stop script.
#
# Set ORA_HOME al quivalente $ORACLE_HOME del sistema
# Set ORA_OWNER Al id del usuario linux que es el propietario de la BD
ORA_HOME=/home/dieguz/oracle/product/10.2.0/db_1
ORA_OWNER=dieguz
if [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"
exit
fi
case "$1" in
'start')
# Arranca la Base de Datos
su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME"
;;
'stop')
# Parar la Base de Datos
su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut $ORA_HOME"
;;
esac
3) Damos los permisos adecuados al fichero:
chmod 755 /etc/init.d/oracle
4) Añadimos el script a los niveles de ejecución 345:
chkconfig oracle 3455) Si usamos la versión 10g Release 2 , tendremos el siguiente mensaje de error:
Failed to auto-start Oracle Net Listener using /ade/vikrkuma_new/oracle/bin/tnslsnr
Tenemos que editar el archivo $ORACLE_HOME/bin/dbstart y modificar la línea :
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
y poner
ORACLE_HOME_LISTNER=$ORACLE_HOME
Si no tenemos definida la variable de entorno $ORACLE_HOME ponemos la ruta a pelo
/home/dieguz/oracle/product/10.2.0/db_1
6) Ahora automáticamente debería arrancarse oracle al reiniciar el sistema. Si quieremos arracancarla o pararla manualmente podemos usar el comando:
/etc/init.d/oracle starto para pararla con
/etc/init.d/oracle stopFuente:
http://www.oracle-base.com/articles/linux/AutomatingDatabaseStartupAndShutdownOnLinux.php
No hay comentarios:
Publicar un comentario