02 noviembre 2011

Arrancar / parar una base de datos Oracle en Linux



Son las 3:00 am, estas jugando una mazmorra en World of Warcraft y suena el teléfono de la guardia, rompiendo tu concentración en el "boss" que estabas a punto de matar.

Operador de CAU: "Se ha caído la maquina xxxxx y tiene una base de datos Oracle, ¿como se arranca?"


¿Quieres evitar esta pesadilla?


Sigue leyendo:


Coloca este codigo en /etc/init.d y crea enlaces en rc5.d y rc3.d para que Oracle Database 10g R2 pueda arrancar o parar automaticamente cuando arranquemos o hagamos una parada controlada del Sistema Operativo Linux.



export ORACLE_BASE=/usr/u01/app/oracle
export ORACLE_HOME=/usr/u01/app/oracle/product/10.2.0.1
export ORACLE_TERM=xterm
export PATH=/home/oracle/bin:$ORACLE_HOME/bin:$PATH
# Se tiene que cambiar el SID 
export ORACLE_SID=orcl
export DISPLAY=:0
export ORACLE_USER=oracle
 
# levantamos el listener, la base de datos y la consola del Database manager
case $1 in
start)
su – “$ORACLE_USER”<<EOO
lsnrctl start
sqlplus /nolog<<EOS
connect / as sysdba
startup
EOS
emctl start dbconsole
EOO
;;
#paramos el listener, la base de datos y la consola del database manager.
stop)
su – “$ORACLE_USER”<<EOO
lsnrctl stop
sqlplus /nolog<<EOS
connect / as sysdba
shutdown immediate
EOS
emctl stop dbconsole
EOO
;;
 
*)
 
echo “Usage: $0 {start|stop}”
;;
esac