Levantar base de datos
Oracle 11g en Solaris con archivo bash
Objetivos
Este
documento tiene como objetivo explicar los pasos necesarios para levantar una
base de datos Oracle 11g con un archivo bash.
Paso 1: Creamos el
archivo bash
Abrimos
un nuevo archivo txt en el cual en la primera línea pondremos la siguiente para
poder saber que este archivo contiene código bash.
#!/bin/bash
Para poder
comentar líneas de código en un archivo bash se utiliza # por ejemplo:
#description: oracle database start
script
#Source function library
Paso 2: Configurar variables de
entorno necesarias para levantar Oracle 11g
En este paso
adicionaremos las variables de entorno en solaris. Recordar que las rutas
definidas a continuación deberían ser cambiadas de acuerdo a la localización de
la base de datos 11g en sus ambientes.
ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
ORACLE_INSTALL=${ORACLE_HOME}/bin
ORACLE_SID=prueba
ORACLE_SYS_LOGIN="sys"
ORACLE_SYS_PWD="prueba"
ORACLE_LISTENER="LISTENER"
ORACLE_LOG_START=/tmp/pruebaStart.`date
'+%d%m%y'`.log
ORACLE_LOG_STOP=/tmp/pruebaStop.`date
'+%d%m%y'`.log
|
Paso
3: Verificamos si existen los ejecutables necesarios para levantar la BD
En
este paso verificaremos con código bash si existen los ejecutables como lsnrctl para levantar un listener y sqlplus para poder levantar la base de
datos. A continuación se muestra el código para verificar los ejecutables.
if [ ! -f
$ORACLE_INSTALL/lsnrctl ]; then
echo "listener don't exists:
$ORACLE_INSTALL/lsnrctl "
exit
fi
if [ ! -f $ORACLE_INSTALL/sqlplus
]; then
echo "sqlplus don't exists:
$ORACLE_INSTALL/sqlplus "
exit
fi
|
Paso
4: Crear funciones de iniciar y terminar la base de datos
En este paso crearemos
funciones en código bash para poder levantar y apagar la base de datos. A
continuación se muestra el código bash, note que se utiliza tanto lsnrctl y sqlplus para levantar.
startOracle()
{
#levantar
Oracle Database
echo
'INICIANDO ORACLE_SID'
export
ORACLE_SID=$ORACLE_SID
export
ORACLE_HOME=$ORACLE_HOME
echo
'INICIANDO LISTENER'
$ORACLE_INSTALL/lsnrctl
start
echo
'ENTRANDO A SQLPLUS'
$ORACLE_INSTALL/sqlplus
/nolog<<EOS
connect
$ORACLE_SYS_LOGIN/$ORACLE_SYS_PWD as sysdba
startup
EOS
}
stopOracle()
{
#parar
oracle
echo
'BAJAR LA BASE DE DATOS'
$ORACLE_INSTALL/sqlplus
/nolog<<EOS
connect
$ORACLE_SYS_LOGIN/$ORACLE_SYS_PWD as sysdba
shutdown
immediate
EOS
echo
'BAJAR EL LISTENER'
$ORACLE_INSTALL/lsnrctl
stop
}
|
Paso
5: Forma de iniciar el archivo bash
En este paso se define el
código bash para poder iniciar el archivo bash. A continuación se muestra el
código bash.
case
"$1" in
'start')
startOracle
;;
'stop')
stopOracle
;;
'restart')
stopOracle
startOracle
;;
*)
echo "Usage: $0 start|stop|restart"
exit
1
;;
esac
|