INSTALACION DE ORACLE 9i SOBRE REDHAT LINUX 9.0

 

Tenemos un maquina con Redhat9.0 instalada, con las x funcionando y los tipicos programas de desarrollo.

Tenemos los 3 cds de instalacion de oracle.

 

Para instalar oracle en Linux hay que realizar una serie de pasos previos.

 

 

Requerimientos de hardware

Parameter       Requeridos        Suficiente (comprobado)
---------------------------------------------------
CPU             PII or K6       K6/2 *(1)
RAM             512 MB          256 MB
HDD space       3.5 GB          2.5 GB *(2)
Swap space      1GB or RAMx2    512 MB or more

 

Requerimientos de software

Parameter       Requeridos       Sufcientes (comprobado)
---------------------------------------------------
Kernel Version  2.4.7           superior también vale
JRE             1.1.8v3         1.1.8v3

 

Variables de entorno y perfiles

 

La instalación require que se pongan una serie de variables antes de comenzaer. Estas pueden  ponerse en el perfil de cada usuario utilizando el .bash_profile o de una forma más generica en el /etc/profile. Estas variables son necesarias para cada cuenta que sea usada para acceder a la base de datos. En nuestro caso hemos utilizado el usuario oracle y el .bash_profile de su cuenta. Más adelante mencionaremos como crear el usuario y los grupos a los que pertenece pero de hecho lo que añadimos a su .bash_profile son estas variables.  A continuación muestro el contenido del .bash_profile de nuestro usuario oracle

 

 

 

 

# .bash_profile

 

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

        . ~/.bashrc

fi

 

# User specific environment and startup programs

 

PATH=$PATH:$HOME/bin

 

export PATH

unset USERNAME

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=/u01/app/oracle/product/9.2.0.1.0

ORACLE_SID=ORTD

 

PATH=$PATH:$ORACLE_HOME/bin

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$ORACLE_HOME/network/lib

LD_ASSUME_KERNEL=2.4.1

 

export PATH ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH LD_ASSUME_KERNEL

 

En las variables que hemos puesto hay que fijarse en dos cosas,

a)    a)    LD_ASSUME_KERNEL=2.4.1 necesaria para que funcione en la instalación de RedHat9.0, al parecer no sería necesaria en la Redhat8

b)    b)    La variable ORACLE_SID=ORTD  Este ortd es la abreviatura de oracle test data base. Puedes poner lo que quieras pero este SID sera el nombre por defecto de la base de datos y parte del nombre de la base de datos global. 

 

EL JRE (JAVA RUNTIME ENVIRONMENT)

 

Hay que bajarse de ftp://ftp.cica.es/pub/java-linux/JDK-1.1.8/i386/v3/  el jre, 

Dentro de nuestro Linux nos vamos a /usr/src

Creamos un directorio java  md  java

Nos metemos dentro y dejamos el archivo jdk118_v3-glibc-2.1.3.tar.bz2

Para descomprimirlo para descomprimirlo

bzip2 –d nombredelarchivo

Nos deja un tar, para abrirlo, este tar lo copiamos a /usr/local y alli lo descomprimimos haciendo

tar xvf jdk118_v3-glibc-2.1.3.tar

Esto nos crea un directorio jdk118_v3 con los archivos necesario del java. Ahora crearemos un enlace simbolico para que la instalacion del oracle encuentre el jre colgando de /usr/local  , entonces hacemos

ln –s /usr/local/jdk118_v3/bin/jre      jre 

El jre resultante es un enlace simbolico al jre verdadero.

 

TAREAS A REALIZAR COMO USUARIO ROOT

 

Ajustes en el kernel:

Desde la version 2.2.1 del kernel algunos de sus parámetros pueden ser configurados dinámicamente a tráves del sistema de archivos /proc y este no necesita ser recompilado, para hacerlo hay que hacer una serie de  pasos

Cambiate al directorio /proc/sys/kernel

Debajo aparecen listados los requerimientos minimos :

Leer y configurar los parámetros de semáforo;

Los valores de los parámetros de semáforo SEMMSL, SEMMNS, SEMOPM, SEMMNI se pueden leer con el siguiente comando

cat sem

La salida del comando deberia ser similar a

250 32000 32 128

Que es la lista de los valores de la lista que hemos dado arriba. Para cambiar estos valores los hacemos con el siguiente comando

echo 100 32000 100 100 > sem

Leer y configurar los parametros de memoria compartida

Los parametros de memoria compartida SHMMAX, SHMMIN, SHMMNI, SHMSEG se pueden leer con el siguiente comando

cat shm_param

donde  shm_param es uno de los shmmax, shmmin, shmmni, shmall, etc. Ahora utiliza los siguientes comandos para poner valores a los parámetros necesarios.

echo 2147483648 > shmmax
echo 4096 > shmmni
echo 2097152 > shmall

Todos estos commandos los he metido en el /etc/rc.d/rc.local para que se ejecuten en cada arranque de la maquina. Y este queda asi

#!/bin/sh

#

# This script will be executed *after* all the other init scripts.

# You can put your own initialization stuff in here if you don't

# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

####Añdido para el tune-up del kernel de la instalació de oracle9i

echo 100 32000 100 100 > /proc/sys/kernel/sem

echo 2147483648 > /proc/sys/kernel/shmmax

echo 4096 > /proc/sys/kernel/shmmni

echo 2097152 > /proc/sys/kernel/shmall

echo 65536 > /proc/sys/fs/file-max

ulimit -n 65536

echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range

ulimit -u 16384

File handles

Para configurar los file handles

echo 65536 > /proc/sys/fs/file-max
ulimit -n 65536

Sockets

Para configurar los sockets

echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range

Process Limit

Para configurar el limite de procesos

ulimit -u 16384

Grupos y cuentas

Como con todas las based de datos de Oracle, el 9i rquire una cuenta para el dueño, tradicionalmente llamada oracle. Los requerimientos para el grupo son un poco inusuales; debe haber un grupo para  OSDBA, al que por defecto se le llama dba. Oracle también require un Segundo grupo (al que se le suele llamar oinstall) para asignar una autoridad que pueda instalar el software. También deberia estar presente otro grupo para los operadores ( pero es opciona), este se usa para dar acceso de operador a ciertos grupos de usuarios. Abajo muestro la secuencia de comandos para crear los grupos.

groupadd dba
groupadd oinstall
groupadd oper

Despues de haber creado los grupos, podemos añadir otra cuenta para el dueño de Oracle.

useradd -c DBA -g oinstall -G dba oracle

que creará la cuenta oracle,  con el grupo primario oinstall y el secundario dba.

Además, los usuarios que tengan que usar esta instancia de la base de datos pueden ser añadidos al grupo dba en el archive /etc/group.

Puntos de montaje y permisos

La instalación de Oracle 9i require un minimo de dos puntos de montaje. Uno para el software y otro para uno de los archivos de las bases de datos. Si se usa el OFA (Optimal Flexible architecture) , entonces los puntos minimos de montaje son 4, uno para el software y 3 o más para los archivos de bases de datos.

La documentación de Oracle recomienda que  cada punto de montaje. Este en un disco fisico separado, pero para un uso minimo como es este caso, lso puntos de montaje pueden ser directorios. Los nombres de los puntos de montaje son tradicionalmente /u01, /u02, /u03, etc. Pueden ser creados como subdirectorios en cualquier parte del sistema y enlazados con enlaces al directorio raiz. En mi caso yo cree los directorios, solo 2 de ellos, bajo el directorio raiz..

Aqui estan los comandos para crear los puntos de montaje, con sus dueños y permisos. (esto se hace como root)

mkdir /u01 /u02
chown oracle.dba /u01 /u02
chmod 755 /u01 /u02

Los dos ultimos comandos hacen que el dueño de los directorios sean del usuario que va a realizar la instalacion, pero cuando esta se ha realizado con exito se puede hacer el los dos directorios principales sean otra vez del usuario root.

Permisos para la creación de archivos.

En la mayoria de los casos hay que configurar el umask a 0022. Cuando se instalan las bases de datos de Oracle, se recomientda comprobar que el umask esta puesto a 0022. Esto nos garantiza que durante la instalacion los archivos que son creados tienen los atributos apropiados. Utiliza los siguentes comandos.:

umask

para comprobar la macara y:

umask 0022

para configurala. Este valor tambien se puede poner en el profile en caso de que el valor por defecto no sea 0022.

Tareas a realizar como usuario oracle

Antes de empezar la instalacion logueate como usuario oracle en una terminal X. Comprueba que las variables tienen los valores apropiados. Puedes hacerlo con el comando env .

Si has podido arrancar las X, y estas instalando en local no deberias tener ningun problema.

Para instalar desde una maquina remota por ej. Desde un windows, luego explicare los pasos detalladamente.

4. Instalación

A continuación paso a relatar como instalar el oracle desde una maquina remota windows. Los pasos de  la instalacion en local contra una sesion X serian muy similares y más sencillos al no tener que configurar nada en cuanto a conexiones remotas.

Nos logueamos con un cliente de terminal por ejemplo el putty contra nuestra maquina linux. Entramos como root y nos pasamos al usuario oracles con el comando

su – oracle

Ahora una vez estando como oracle lanzamos un programa que estara previamente instalado y nos va a permitir ejecutar las x remotamente. Este programa es el vncserver. Para ejecutarlo y que el servidor de X este corriendo en linux hacemos:

vncserver

Si es la primera vez que lo ejecutais os pedira que pongais un password para cuando la gente trate de conectarse a ese servicio. Tened en cuenta que hemos ejecutado este comando estando como el usuario oracle, de forma que si nos logueamos ahora con el cliente del vnc el entorno que tendremos no sera el del superusuario sino el de oracle.

Para conectarnos a esa terminal de X necesitamos el cliente windows del vnc que es el vncviewer. Te lo bajas de internet en http://homepage.mac.com/kedoin/VNC/VNCViewer/ lo instalas, lo ejecutas y deberias ver algo parecido a esto

Si os dais cuenta lo que se pone es la ip de la maquina en la que se ejecuta linux separado por dos puntos y el numero de servidor x ejecutandose. Hay que tener en cuenta que la maquina linux la tenemos corriendo en modo consola y que al arrancar el vncserver nos da el primer servidor de X.

Al darle ok, nos pide un password, se lo damos y lo que veremos en nuestro windows es el escritorio de las X de nuestra maquina linux.

Abrimos una teminal, boton derecho nueva terminal,

En esa terminal nos cambiamos a root con

su - root

Nos pide password de root, y la minimizamos. La dejamos asi porque vamos a necesitar una terminal con derechos de admin.

Abrimos otra terminal y la minimizamos tambien.

Ahora nos vamos hasta la maquina y colocamos en el lector del cdrom el primero de los 3 cds de oracle.

Nos cambiamos al terminal que tenemos abierto como root y vamos a comprobar si el cdrom se ha montado automaticamente, si no es asi lo montaremos manualmente. Para comprobar si estra montado escribimos

ls –l /mnt/cdrom      si esta montado lo que  nos devolvera la pantalla seran los conteniods del directorio cdrom que se corresponden con los del cdrom fisico. Si no esta montado tenemso que hacer lo siguiente.

mount     /dev/cdrom      /mnt/cdrom

Durante la instalacion el instalador de oracle pedira cambios de cd , entonces deberemos expulsar el que esta dentro y montar el siguiente. Para expulsar un cd habria que ejecutar el comando eject . Yo he optado por crear un par de miniscripts para montar y desmontar los cds que pueden ser usados a voluntad, estos son cdon para montar y cdout para desmontar. Dejo aquí los scripts.

El cdon

#!/bin/bash

cd /mnt

mount /dev/cdrom /mnt/cdrom

echo

echo

echo

echo

echo

echo

echo

echo

echo

echo   MONTANDO EL CDROM

echo

echo

echo

echo

echo

echo

echo

echo

ls /mnt/cdrom

echo

echo

echo

Y el cdout

#!/bin/bash

eject

echo

echo

echo

echo

echo

echo

echo

echo

echo

echo  DESMONTANDO Y EXPULSANDO EL CDROM

Los dejais en /usr/bin y les dais bandera de ejecución con chmod +x

 

4.2 Ejecutando el instalador

Una vez tenemos el primer cdrom montado y estando en la sesion X que hemos abierto como usuario oracle, nos vamos a la terminal que habiamos abierto para el usuario oracle, notese que no es la de root que la mantenemos minimizada pues la necesitaremos luego.

Entonces ejecutamos

/mnt/cdrom/runInstaller &

Por otra parte se pude abrir el index.html de mismo directorio en un navegador de internet para seguir la documentacion de oracle durante la instalacion..

4.3 Pantallazos de instalacion y pasos

El instalador de oracle tiene un interfaz intuitivo y simple. Te puedes saltar esta seccion si quieres y seguir tus instintos. Las pantallas se explican por si mismas y estan ordenadas logicamente..

Pantalla de Bienvenida

>Desde esta pantalla podemos elegir instalar o desinstalar productos. Si es la primera instalacoin darle a siguiente.

Aparece una nueva ventana (Inventory Location) . Te pregunta donde quieres dejar las cosas durante la instlacion/es ahora y en el futoro. Dale OK si estas de acuerdo, o cambia de acuerdo con tus gustos.

Pantalla de nombre de grupo UNIX

Esta pantalla te pregunta cual es el grupo de instalacion de oracle que por defecto es ointsall. Si quieres cambiar este nombre o cualquier otro habria que modificar los grupos que hemos creado al principio. Te saldra un dialogo que te manda usar la terminal como root que tenemos minimizada para ejecutar un script. La abres y ejecutas el script en /tmp/orainstRoot.sh

Si se ejecuta con exito deberias ver:

Creating Oracle Inventory pointer file (/etc/oraInst.loc)
Changing groupname of /u01/app/oracle/oraInventory to oinstall.

Ahora volvemos a la pantalla de instalacion y continuamos.

Pantalla de localizacion del los ficheros.

Esta pantalla te muestra el origen y destino de los archivos en el proceso de instalacion. Si las variables de entorno que pusimos estan bien, no deberia haber ningun problema. Le damos a siguiente.

Lo que sigue es una larga lectura al disco y una barra de progresoen la parte superiro derecha de esta pantall. Simplemente se paciente.

Pantalla de productos disponibles

Esta pantalla muestra los productos disponibles en esta instalacion. Como solo estamos instalando la base de datos, la primera opcion que es la que viene por defecto es la correcta. Le damos a siguiente.

Pantalla de tipos de instalacion

Click Standard Edition. Podemos seleccionar  Enterprise, pero el camino desde este punto puede ser diferente y quiza haya que seleccionar otras opciones..

Pantalla de configuracion de la base de datos

Esta pantalla permite al operador seleccion que proposito va a tener la base de datos. Nosotros hemos elegido proposito general. Hay un periodo de espera, que tambien es corto.

Pantalla de identificacion de la base de datos.

Aqui se le pide al operador que ponga el nombre de la base de datos global. El texto de esta pantall es autoexplicativo. Por ejemplo yo puse,

ORTD.PCDeia

El nombre de mi servidor es PCDeia, usa tu nombre de host en su lugar y dale a siguiente.

Localizacion de la base de datos.

Aqui se te pide que pongas donde va a estar situada fisicamente los archivos de la base de datos. Tambien te recomienda que pongas los archivos de datos en un disco separado asi que nosotros pusimos.

/u02/oradata

En vez del valor por defecto. Darle a siguiente cuando este hecho.

Configuracion del juego de caracteres

Esta pantalla te permite poner otros juegos de caracteres, nosotros la dejamos cmo esta.

Pantalla resumen.

Si ves esta pantalla tu preparacion para el instalador esta finalizada. Ahora podrias examinar el arbol de instalacion y ver lo que has seleccionado. Si estas de acuerdo con lo que ves le das a siguiente.

Pantalla de instalacion

Esta es una pantalla aburrida que dura mucho. Incluye cambiar los cds de cuando en cuadno, muestra una barra de progreso con el porcentaje de la instalacion. El proceso de instalacion es muy largo. Primero se instalan los componentes del software y luego todo es linkado.

IMPORTANTE! En mi caso salen un par de errores alrededor del 72%  yo le di ignorar y fucionno sin problemas.

Al terminar aparece un cuadro de dialog, que te pide que ejecutes unos comandos en la terminal al acabar. Basicamente e sun script llamado root.sh en el direcotroio $ORACLE_HOME que hay que ejecutar como root en la terminal de root. La ejecucion lleva su tiempo y un monton de actividad en el led del disco duro. Asi que se paciente y no te preocupes.

Pantalla de herramientas de configuracion

La pantalla de herramientas de configuracion trata de ejecutar 3 tareas y devuelve errores para las 3. Yo resolvi el problema de este modo: En el directorio $ORACLE_HOME hay un link llamado JRE, que enlaza con el directorio Oracle JRE . Borra este link y create uno para tu propia distribucion de JRE. Aquí esta la lista de comandos:

rm -f JRE
ln -s /usr/local/jre/ JRE

Despues de configurar estos comandso trata de seleccion uno a uno los items de la columna nombre de herramienta y le das a reintentar. Si esto no funciona no te preocupes, estas herramientas son opcionales y se pueden hacer despues.

Solucionando problemas

Si las ultimas tareas (opcionales) no se ejecutan. Tengo un conjunto de instrucciones de como hacer por lo menos 2 de ellas. Pero primero, quiero poner el enfasis en tener la documentacion del oracle a mano y de que uno trate de eller entre lineas cuando estes tratando de averiguar que pasa con tu instalacion. Si las condiciones son las correctas no deberias tener ningun error serio. Si lo tuvieses comprueba todas las condiciones inicales, permisos de archivo y directorio, espacio en disco.

Tambien puedes borrar todo y empezar desde el principio si te borras los puntos de montaje (/u01, /u02, etc.), y borras el archivo oratab en el directorio /etc. Hay otro conjnuto de archivos que quiza tengas que borrar, estan en el directorio /usr/local/bin y los nombres son oraenv, coraenv y dbhome. Sin enbmargo pudes dejarlos ahí y en  tu siguiente instalacion el instlador te preguntara si los quieres mantener.

Ahora las tareas opcionales:

Asistente de configuracion de red

Para ejecutar este tienes que ir al directorio $ORACLE_HOME/bin  y escribir:

./netca &

Esta aplicacion instalara una de 4 tareas. El listener es lo que nosotros queremso arrancar. Las otras no son tan importantes, pero trata de instalarlas tambien. Antes de configurar el listener quiza tengas ya el listener corriendo. Compruebalo con el siguente comando.:

ps afx | grep LISTEN |9 grep -v grep

Si obtienes algo similar a:

15922 ? S 0:00 /u01/app/oracle/product/9.2.0.1.0/bin/tnslsnr LISTENER

Tienes el listener ejecutandose. Paralo con el siguiente comando en el directorio $ORACLE_HOME/bin

./lsnrctl stop

Quiza tengas que borrar el listener existente y crear uno nuevo. Esto depende de ti. Sigue el curso natural de la aplicación. Al final el nuevo listener se arrancara si creaste uno nuevo.

Asistente de configuracion de base de datos

Para ejecutarlo, ve a $ORACLE_HOME/bin y escribe:

./dbca &

Esta apliacion es probablemente las mas importante del conjunto. Te permite crear y configurar tu base de datos. Si la base de datos no fue creada durante la instalacion esta es la aplicación que te va a permitir crearla..

Si no has usado la base de datos aun, quiza quieras borrarla y recreala. Lo puedes haccer desde aquí.

Elije Typical cuando se te pregunte por los parametros de la base de datos. La siguiente pantalla con la estructura en forma de arbol te permite configurar la localizacion de tus archivos de base de datos. En vez de {ORACLE_BASE}, puedes poner por ejemplo /u02 . Esto pondra los archivos de base de datos en el directorio /u02/oradata/SID Esto es solo un ejemplo. Tu decides como extender el arbol de directorios de tu base de datos.

Al final de la creacion de la base de datos se te preguntara por los passwords de los usuarios SYS y  SYSTEM. Ponlos con su confirmacion y recuerdalos. Esto funciona dandole al OK por si no lo habias adivinado J , ahora ejecuta

ps afx

y la pantalla deberia contener lineas similares a las que siguen:


 
PID     TTY      STAT   TIME COMMAND
    1   ?        S      0:04 init
    2   ?        SW     0:01 [keventd]
    
..... Montones de lineas que no nos interesan...
 
11665   ?        S      0:00 ora_pmon_ORTD
11667   ?        S      0:00 ora_dbw0_ORTD
11671   ?        S      0:00 ora_lgwr_ORTD
11673   ?        S      0:00 ora_ckpt_ORTD
11675   ?        S      0:00 ora_smon_ORTD
11677   ?        S      0:00 ora_reco_ORTD
11679   ?        S      0:00 ora_cjq0_ORTD
11681   ?        S      0:02 ora_qmn0_ORTD
11683   ?        S      0:00 ora_s000_ORTD
11685   ?        S      0:00 ora_d000_ORTD
11812   pts/1    S      0:00 /u01/app/oracle/product/9.2.0.1.0/bin/tnslsnr LISTENER -inherit

Si ves esto es que tu  base de datos esta corriendo. La ultima linea del ejemplo anterior es el listener.

Felicidades! Has terminado tu instalación con exito.

Más sobre resolucion de problemas

Lo siguiente es un update cortesia de Rene Bauer. Te puedes encontrar problemas con las siguientes cosas:

El problema de compatibilidad con el JRE  fue reportado por varias persosnas. El problema existe porque RedHat 8 and 9 vienen  con la version del gcc 3.2.x, pero alugnas versiones más viejas del JRE han sido compiladas con el gcc 2.9.x. La solucion es bajarse la utlima version del JRE. Cuando hemos hecho este documento la version es 1.4.1 y como no hayun jre ejecutable, ejecuta el siguiente comando para crear un enlace simbolico.:

ln -s $JRE_DIR/bin/java $JRE_DIR/bin/jre

donde $JRE_BIN es tu directorio de jre.

El segundo tema es en realcion a que desaparezca el archivos de configuracion despues de la creacion de la base de datos. El archivo init{ORACLE_SID}.ora deberia ser creado por defecto en el directorioa $ORACLE_HOME/dbs/

La solución de Rene es: El instalador crea un archivo llamado spfile{ORACLE_SID}.ora,  asi que se puede crear un enlace simbolico para imitar al archivo perdido. Cambia tu directorio de trabajo a $ORACLE_HOME/dbs/ y ejecuta:

ln -s spfile{ORACLE_SID}.ora init{ORACLE_SID}.ora

Mi solucion: Siempre  queda un archivo tras la instalacion que se llama init.ora Simplementea se copia este archivo a init{ORACLE_SID}.ora. Cambia tu directorio de trabajo a $ORACLE_HOME/dbs/ y ejecuta:

cp init.ora initORTD.ora

El tercer problema es referente al proceso de instalacion del oracle instalando Legato Single Server Version. Yo no tuve este problema pero aqui esta la version de Rene, que trataré de resumier cuanto me sea posible.: El ultimo archivo root.sh ejecutado en la instalacion de oracle habia causado un error al tratar de instalar LSSV. Según Rene, RedHat 8 y 9 vienen con ncurses5, que por defecto viene sin la compatibilidad para ncurses4 , asi que despues de instalarse el problema de instalacion de LSSV desparece.

 

5. Post-instalacion

La guia de instalacion de oracle describe una larga lista de procedimientos a realizar despues de la instalacion. Algunos son necesarios, otros quiza no sean necesarios en todos los caos. Echa un vistazo a la guia de instalacion para ver estos procedimientos. Yo aquí describire los pasos que son utilies para la instalacion minima que yo use que parece suficiente para las operaciones basicas de la base de datos.

5.1 Editando el archivo oratab

Hay un paso en particular que es importante, de forma que puedas arrancar  y parar la base de datos desde la linea de comandos en cualquier momento, y tambien permitir que la base de datos se lance en el arranque. Ve al directorio /etc y edita el archivo oratab. En la linea:

ORTD:/u01/app/oracle/product/9.2.0.1.0:N

Pon el ultimo valor a Y y este deberia verse como:

ORTD:/u01/app/oracle/product/9.2.0.1.0:Y

Ahora guarda el achvo y vuelve al directorio home del oracle

5.2 Script para que se inicie oracle automaticamente en el arranque de la maquina.

Generalmente es una buena idea automatizar el inicio de la base de datos en el arranque de la maquina. En este caso necesitaras un script, que puede ser incluido en los niveles de ejecucion.

 

 
#!/bin/bash
#
# Run-level Startup script for the Oracle Instance and Listener
#
# chkconfig: 345 91 19
# description: Startup/Shutdown Oracle listener and instance
 
ORA_HOME="/u01/app/oracle/product/9.2.0.1.0"
ORA_OWNR="oracle"
 
# if the executables do not exist -- display error
 
if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_HOME ]
then
        echo "Oracle startup: cannot start"
        exit 1
fi
 
# depending on parameter -- startup, shutdown, restart 
# of the instance and listener or usage display 
 
case "$1" in
    start)
        # Oracle listener and instance startup
        echo -n "Starting Oracle: "
        su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl start"
        su - $ORA_OWNR -c $ORA_HOME/bin/dbstart
        touch /var/lock/subsys/oracle
        echo "OK"
        ;;
    stop)
        # Oracle listener and instance shutdown
        echo -n "Shutdown Oracle: "
        su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl stop"
        su - $ORA_OWNR -c $ORA_HOME/bin/dbshut
        rm -f /var/lock/subsys/oracle
        echo "OK"
        ;;
    reload|restart)
        $0 stop
        $0 start
        ;;
    *)
        echo "Usage: $0 start|stop|restart|reload"
        exit 1
esac
exit 0

 

 Copia y pega este script de acuerdo con tu configuracion. Una vez que has copiado y pegado el archvo muevelo al directorio /etc/rc.d/init.d y cambiale el dueño y los atributos para que tenga los mismos que los otros archivos del directorio. Para hacerlo tendras que haberte logueado como root. A nuestro fichero yo le he llamado arrancaoracle.

La quinta linea de este script dice:

# chkconfig: 345 91 19

Y es usada por el comando chkconfig cuando configura los scripts en los niveles de ejecucion. El valor 345 lista los niveles de ejecucion en los que permitimos a Oracle ejecutarse, asi que si quieres que Oracle se ejecute solo en los nives 3 y 5 cambia este valo a 35. El siguiente valor (91) describe el numero de orden en el proceso de inicio, esto es, si hay 100 procesos de inicios, el arranque de oracle sera el 91 en ejecutarse. El siguinte numero es el numero de apagado, significando que si hay 100 procesos que apagar, el proceso de oracle sera el 19 .Estos numeros se usan para configurar la posicion relativa de oracle en los procesos de arranque y apagado. Los que he puesto aquí son un ejemplo, tu puedes cambiarlos, pero ten en cuenta que loas instancias de oracle no pueden iniciarse si no hay ciertos procesos del sistema corriendo previamente. Ahora ejecuta el siguiente comando.

chkconfig -add arrancaoracle

Esto añadira los links correspondientes en los directorios de nivel de ejecutcion  tal y como estan listados en el principio del script.

Para comprobar que funciona tendras que reiniciar el sistema, p ero recuerda que antes de que funcione la automatizacion tienen que estar configurados los parametros del kernel. De hecho deberias incluir los parametros del kernel-tune-up in el arranque tambien. (nosotros lo hicimos con el rc.local)

5.3 Comprobando tu configuracion con SQL*Plus

Si has instalado la tipica base de datos, deberia haber un usuario creado llamado scott, el password es tiger. Simplemente ejecuta el comando

sqlplus scott/tiger

que deberia ejecutar el interprete de SQL*Plus y loguearte ccom el usuario scott. Deberias ver una pantalla com la que  sigue:


 
SQL*Plus: Release 9.2.0.1.0 - Production on Fri Feb 21 10:55:45 2003
 
Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.
 
Connected to:
Oracle9i Release 9.2.0.1.0 - Production
JServer Release 9.2.0.1.0 - Production
 
SQL>quit
Disconnected from Oracle9i Release 9.2.0.1.0 - Production
JServer Release 9.2.0.1.0 - Production

Antes de salir puedes rular unos comandos de SQL para ver las tablas etc.