Está en la página 1de 20

INSTALACION DE ORACLE 11g EN SUSE 10

I.- CONFIGURACIN PARA UNA INSTALACIN REMOTA


Si estamos pensando en conectanos remotamente para realizar la instalacin entonces debemos de
habilitar a X Window para que se ejecute desde mi sistema con los comandos siguientes:
1.$ xhost fully_qualified_remote_host_name

Por ejemplo:
$ xhost somehost.us.example.com

2.- Activar el X Window con el siguiente comando:


$ DISPLAY=local_host:0.0 ; export DISPLAY

Donde local_host es la direccin IP de nuestra estacin de trabajo desde donde vamos a instalar el
oracle remotamente
II.- DESCARGA Y COPIA DE LOS ARCHIVOS AL DISCO DURO
1.- Bajamos oracle_11gR1_database.zip de la web de oracle:
http://www.oracle.com/technology/software/products/database/index.html

2.- Creamos un directorio en llamado oracle en /home/oracle


# mkdir /home/oracle

3.- Movemos y descomprimimos el archivo linux.x64_11gR1_database.zip en


/home/oracle

En mi caso lo tengo en el escritorio (las descargas por defecto en firefox), por lo que, s
a) Movemos el archivo linux.x64_11gR1_database.zip a /home/oracle
# mv /root/Desktop/linux.x64_11gR1_database.zip /home/oracle

Nos cambiamos a oracle


# cd /home/oracle

b) Descomprimimos linux.x64_11gR1_database.zip
# unzip linux.x64_11gR1_database.zip

Con esto vemos que tenemos ya descomprimida la carpeta database


# ls
database

linux.x64_11gR1_database.zip

Listando el contenido de database debemos de ver algo similar a:


# ls database
doc install response

runInstaller

stage

welcome.html

Los cuales son los archivos necesarios para nuestra instalacin

Nota: posteriormente en la seccin de creacin de usuarios y grupos le vamos a dar los permisos
necesarios al usuario oracle para que pueda utilizar estos archivos.
REQUISITOS DE HARDWARE Y SOFTWARE PARA LA CORRECTA INSTALACIN
NOTA: La instalacin lo vamos a hacer de manera directa en el nuevo servidor de base de datos, por lo
que no habilitaremos X Window para que se ejecute en una PC remota.
HARDWARE NECESARIO
MEMORIA
Determinamos la capacidad de almacenamiento de nuestro servidor con el comando
# grep MemTotal /proc/meminfo
MemTotal:
1522780 kB

Por lo que vemos que este pasa


Ahora para el swap checamos en la tabla siguiente de cuanta memoria necesitamos tener nuestro
swap:
RAM disponible
Entre 257 MB y 512 MB
Entre 513 MB y 2048 MB
Entre 2049 MB y 8192 MB
mas de 8192 MB

Espacio requerido en el Swap


El doble de la RAM
1.5 veces el tamao de la RAM
Igual al tamao de la RAM
0.75 veces el tamao de la RAM

En mi caso como vemos tengo aproximadamente 1487 MB por lo que si veo en la tabla le corresponde
un total de 1.5 * 1487 = 2231 MB
Ahora para checar la cantidad de memoria swap que tengo, tecleo lo siguiente:
# grep SwapTotal /proc/meminfo
SwapTotal:
1574360 kB

O sea 1537 MB
Por lo que vemos nos hace falta mas memoria para swap 1537 MB < 2231 MB, nos falta: 694 MB;
Procederemos a aumentar la memoria swap
#
#
#
#

dd if=/dev/zero of=extraswap bs=1k count=1009664


chmod 600 extraswap
mkswap extraswap
swapon extraswap

Para verificar que el swap se haya asignado se puede digitar el siguiente comando:
# grep SwapTotal /proc/meminfo
SwapTotal:
2285008 kB

Vemos que ya tenemos cumplimos con la cantidad de memoria swap de 2231 MB


Determinamos ahora el espacio libre en RAM y swap
# free
Total
Mem:
-/+ buffers/cache:
Swap:

used
1522780
274196
2285008

free
shared
buffers
1472016
50764
1248584
172
2284836

Administracin automtica de memoria

cached
42892

1154928

Oracle Database 11g, la la administracin automtica de memoria requiere de mas memoria compartida
(shared memory) (/dev/shm) as como archivos descriptores. La memoria compartida debe ser al
menos del tamao de MEMORY_MAX_TARGET y MEMORY_TARGET para cada instancia de Oracle en
nuestra computadora. Si MEMORY_MAX_TARGET o MEMORY_TARGET tiene un valor distinto de cero y
la memoria compartida no tiene el tamao adecuado, entonces nos enviar un mensaje de error:ORA00845 al iniciar oracle. El numero de archivos descriptores para cada instancia de Oracle debe ser al
menos 512*PROCESSES. Tambin, el limite de los descriptors para cada proceso debe ser al menos
512. Si los archivos descriptores no tienen los tamaos adecuados, veremos el mensaje de error ORA27123 de varios procesos de Oracle y de Linux el error EMFILE (demasiados archivos abiertos) errores
en procesos distintos de oracle.
To determine the amount of shared memory available, enter the following command:
# df -k /dev/shm/

Nota:
MEMORY_MAX_TARGET and MEMORY_TARGET no se puede usar cuando LOCK_SGA esta habilitado o
con paginas grandes en Linux.
En la pgina de parmetros de inicializacin, en un sistema Linux, nota que el tamao de (SGA y PGA),
que establece el parmetro de inicializacin MEMORY_TARGET o MEMORY_MAX_TARGET, no puede ser
mayor que la memoria compartida del sistema de archivos en el sistema operativo.
Por ejemplo, si el tamao de la memoria compartida de nuestro sistema de archivos en nuestro sistema
es de 1 GB, pero nuestro tamao de memoria (MEMORY_TARGET) de 2 GB, entonces recibiremos el
siguiente mensaje de error al iniciar:
ORA-00845: MEMORY_TARGET not supported on this system
ORA-01078: Failure in processing system parameters
Ademas si revisamos todos los parametros de inicializacion, veremos que si nuestro nombre de base de
datos es mayor que 8 caracteres, entonces el valor del nombre de la base de datos (en el parametro
DB_NAME) esta recortada a los primeros 8 caracteres, y el valor del parmetro DB_UNIQUE_NAME
toma el valor de la variable global.
ARQUITECTURA DEL SISTEMA
Vamos a verificar que nuestro PC cumpla con los requisitos del sistema necesarios para la instalacin de
Oracle
# uname -m
i686

REQUERIMIENTOS DE ESPACIO EN DISCO


El mnimo necesario en el directorio tmp para Oracle Database Client 11g Release1 es de 130 MB
Para determinar el espacio en /tmp tecleamos:
# df -k /tmp
Filesystem
/dev/hdc4

1K-blocks
23494316

Used Available Use% Mounted on


9324640 14169676 40% /

Vemos que es suficiente


En caso de no ser suficiente tendramos que ampliar el espacio en /tmp
Ahora vamos a determinar el espacio total en nuestro disco duro
# df -k
Filesystem
/dev/hdc4

1K-blocks
23494316

Used Available Use% Mounted on


9324644 14169672 40% /

udev

761388

172

761216

1% /dev

Podemos comprobar el espacio que tenemos contra la tabla siguiente


Tipo de Instalacin
Instant Client
Administrator
Runtime
Custom (maximum)

Necesita
265 (MB)
1.29 (GB)
890 (MB)
1.02 (GB)

HARDWARE NECESARIO PARA EL DESARROLLADOR SQL


Recurso
Tipo de CPU y velocidad
Memoria
Pantalla

Recomendado
Pentium IV 2 GHz or
superior
1 GB RAM (recommended),
256 MB RAM (min)
65536 colores, con una
resolucin de 1024 X 768

REQUERIMIENTOS DE SOFTWARE
SISTEMA OPERATIVO: SUSE Linux Enterprise Server 10.0
Para determinar la distribucin y versin de Linux:
# cat /proc/version
Linux version 2.6.16.21-0.8-smp (geeko@buildhost) (gcc version 4.1.0 (SUSE Linux)) #1 SMP Mon Jul 3 18:25:39
UTC 2006

KERNEL: Para SUSE Linux Enterprise Server 10 debe ser 2.6.16.21 o superior
Para determinar la versin del kernel
# uname -r
2.6.16.21-0.8-smp

Vemos que es el adecuado


PAQUETES NECESARIOS:
Como en nuestro caso tenemos una PC x86 bits entonces los paquetes necesarios son los siguientes:
Sistema Operativo
SUSE Linux Enterprise Server 10 x86 (32 bits)

Requerimientos
binutils-2.16.91.0.5
compat-libstdc++-5.0.7
gcc-4.1.0
glibc-2.4-31.2
glibc-devel-2.4-31.2
ksh-93r-12.9
libaio-0.3.104
libaio-devel-0.3.104
libelf-0.8.5
libgcc-4.1.0
libstdc++-4.1.0
libstdc++-devel-4.1.0
make-3.80
sysstat-6.0.2
unixODBC-2.2.11
unixODBC-devel-2.2.11

x86-64

SUSE Linux Enterprise Server 10 x86-64

binutils-2.16.91.0.5
compat-libstdc++-5.0.7-22.2
gcc-4.1.0
gcc-c++-4.1.0
glibc-2.4-31.2
glibc-32bit-2.4-31.2 (32 bit)
glibc-devel-2.4
glibc-devel-32bit-2.4 (32 bit)
libaio-0.3.104
libaio-32bit-0.3.104 (32 bit)
libaio-devel-0.3.104
libelf-0.8.5
libgcc-4.1.0
libstdc++-4.1.0
libstdc++-devel-4.1.0
make-3.80
sysstat-6.0.2

NOTA: Los paquetes pueden ser de la versin que se muestra en la tabla o superior (Para el caso de
los que tienen SUSE Linux Enterprise Server 10 SP1)
Para comprobar la existencia de cada uno de los paquetes tecleamos:
# rpm -q package_name
Donde package_name es el paquete a comprobar. Por ejemplo en nuestro caso nos arrojo que teniamos
instalados todos los paquetes menos el ltimo:
# rpm -q binutils-2.16.91.0.5
binutils-2.16.91.0.5-23.4
# rpm -q compat-libstdc++-5.0.7
compat-libstdc++-5.0.7-22.2
# rpm -q gcc-4.1.0
gcc-4.1.0-28.4
# rpm -q glibc-2.4-31.2
glibc-2.4-31.2
# rpm -q glibc-devel-2.4-31.2
glibc-devel-2.4-31.2
# rpm -q ksh-93r-12.9
ksh-93r-12.9
# rpm -q libaio-0.3.104
libaio-0.3.104-14.2
# rpm -q libaio-devel-0.3.104
libaio-devel-0.3.104-14.2
# rpm -q libelf-0.8.5
libelf-0.8.5-47.2
# rpm -q libgcc-4.1.0
libgcc-4.1.0-28.4
# rpm -q libstdc++-4.1.0
libstdc++-4.1.0-28.4
# rpm -q libstdc++-devel-4.1.0
libstdc++-devel-4.1.0-28.4
# rpm -q make-3.80
make-3.80-202.2
# rpm -q sysstat-6.0.2
sysstat-6.0.2-16.4
# rpm -q unixODBC-2.2.11
unixODBC-2.2.11-21.4
# rpm -q unixODBC-devel-2.2.11
package unixODBC-devel-2.2.11 is not installed

El cual instalaremos desde yast, para ello damos clic en Computer->Yast->software>Instalar/desinstalar software y en buscar tecleamos el nombre del paquete sin la versin por ejemplo:

unixODBC-devel
Y marcamos el paquete para su instalacin.
En caso de no encontrar errores tenemos que descargarlos directamente desde Internet y en este caso
particular desde http://www.unixodbc.org/.
Pero en la mayora de casos encontraremos los paquetes en rpm en el sitio http://rpm.pbone.net/ nos
manda a cada uno de los sitios en donde se encuentran disponibles.
NOTA: En el caso de la versin a 64 bits todos los paquetes se encuentran en el CD ROM o DVD de
instalacin de Suse Linux , solo en el caso de 32 bits los tenemos que descargar desde Internet.
INSTALAMOS LOS CONTROLADORES DE ORACLE PARA ODBC
unixODBC-32bit-2.2.11 (32 bit) or later
unixODBC-devel-32bit-2.2.11 (32 bit) or later
Se pueden encontrar por ejemplo en
ftp.opensuse.org/distribution/SL-10.1/inst-source/suse/x86_64/unixODBC-32bit-2.2.11-19.x86_64.rpm
Para 64 bits, lo descargamos e instalamos con:
# rpm -Uvh unixODBC-32bit-2.2.11-19.x86_64.rpm

CREACION DE GRUPOS Y USUARIOS PARA LA INSTALACIN


Ahora viene la parte de la creacin de usuarios y grupos para la instalacin de Oracle. En el caso de
tener una instalacin previa entonces ya tenemos lo necesario, pero iremos comprobando cada uno de
estos.
Aunque nos podemos dar cuenta de que ya tenemos algunos grupos, usuarios y directorios si es que ya
anteriormente hicimos una instalacin en nuestra PC.
Para determinar la existencia de una instalacin previa tecleamos:
# more /etc/oraInst.loc

Cuyo contenido es similar a:


inventory_loc=/u01/app/oraInventory
inst_group=group
CREAR EL GRUPO oinstall
Antes de crear el grupo oinstall primero verificamos si ya existe, en caso contrario lo crearemos.
# grep oinstall /etc/group

Si no nos devuelve nada entonces crearemos el grupo oinstall con:


# /usr/sbin/groupadd oinstall

CREAR EL GRUPO dba


Determinamos si existe el grupo dba
# grep dba /etc/group

Si no existe lo creamos

# /usr/sbin/groupadd dba

CREAR EL GRUPO oper


Creamos el grupo oper
# grep oper /etc/group
# /usr/sbin/groupadd oper

CREAR EL GRUPO asadmin


Creamos el grupo asadmin
# grep asadmin /etc/group
# /usr/sbin/groupadd asadmin

CREACIN DEL USUARIO oracle


Determinamos si existe el usuario oracle
# id oracle

Si no existe lo creamos con


# /usr/sbin/useradd -g oinstall -G dba,oper oracle

Establecemos el password del usuario oracle


# passwd oracle

Tecleamos el password de oracle y lo confirmamos


Aunque la creacin de cada uno de los directorios lo veremos posteriormente, por el momento
necesitamos crear el directorio /home/oracle y le damos permisos necesarios al usuario oracle
Primero verifico si existe la carpeta personal del usuario oracle con:
# ls /home

Si no lo encontramos lo creamos con


# mkdir -p /home/oracle
Ahora si establecemos permisos necesarios:
# chown -R oracle.oinstall /home/oracle
# /usr/sbin/usermod -g oinstall -G dba,oper oracle

Al empezar esta seccin de instalacin descargamos y descomprimimos los archivos de instalacin en


esta carpeta ahora vamos a darle los permisos a la carpeta database
# chown -R oracle:oinstall /home/oracle database
# chmod -R 775 /home/oracle/database

NOTA: En caso de que ya existiese el directorio personal del usuario oracle entonces nada mas le
damos los permisos.
Vamos a determinar el shell del usuario oracle
# su - oracle
$ echo $SHELL

$ exit

En nuestro caso nos percatamos que es bash esto hay que tenerlo muy en cuenta futuras operaciones.
CREACIN DEL USUARIO nobody
# id nobody
uid=65534(nobody) gid=65533(nobody) groups=65533(nobody),65534(nogroup)

Si no existiera lo creamos con


# /usr/sbin/useradd -g nobody

CONFIGURANDO LOS PARAMETROS DEL KERNEL


1. Edita o crea con vi o tu editor de textos preferido el archivo /etc/sysctl.conf file, y agrega o edita
las lneas siguientes:
#fs.file-max = 512 * PROCESSES
fs.file-max = 6553600
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144

Nota:
Los parametros de kernel.sem deben ser cuatro, si algun tenemos un valor menor al que se muestra
anteriormente, entonces colocamos el valor mximo (parmetro max en default). El valor minimo
requerido para shmmax es 0.5 GB. Aunque Oracle recomienda que shmmax tenga 2.0 GB para un
ptimo desempeo del sistema.
Despus de especificar los nuevos valores en /etc/sysctl.conf, estos se cambian cuando reiniciamos
el sistema. Pero en SUSE Linux Enterprise Server introducimos el siguiente comando para que el
sistema lea estos nuevos valores del archivo /etc/sysctl.conf:
# /sbin/chkconfig boot.sysctl on

2. Depus debemos de teclear otro commando para cambiar los nuevos parametros nuevos del kernel
# /sbin/sysctl -p

Hay que revisar la salida de estos comandos para asegurarnos de que efectivamente se realizaron los
cambios y en caso de que no volvemos a teclear nuevamente los comandos anteriores nuevamente.
Para checar cada uno de los parmetros del kernel de manera individual es necesario teclear lo
siguiente:
Parameter
semmsl, semmns, semopm,
and semmni
shmall,
shmmni

shmmax,

and

Command
# /sbin/sysctl -a | grep sem

This command displays the value of the semaphore


parameters in the order listed.
# /sbin/sysctl -a | grep shm

This command displays the details of the shared


memory segment sizes.

file-max

# /sbin/sysctl -a | grep file-max

ip_local_port_range

# /sbin/sysctl -a | grep ip_local_port_range

This command displays the maximum number of file


handles.
This command displays a range of port numbers.

rmem_default
rmem_max
wmem_default
wmem_max

# /sbin/sysctl -a | grep rmem_default


# /sbin/sysctl -a | grep rmem_max
# /sbin/sysctl -a | grep wmem_default
# /sbin/sysctl -a | grep wmem_max

CONFIGURACIN DE LOS LMITES EN EL SHELL PARA EL USUARIO ORACLE


Para mejorar el desempeo de Oracle en sistemas Linux, se recomienda establecer los valores en los
lmites de shell para el usuario oracle segn la tabla siguiente:
Shell Limit
Maximum number of open file descriptors
Maximum number of processes available to a single
user

Item en
limits.conf
nofile

Hard Limit
65536

nproc

16384

Para incrementar estos valores en el shell haremos lo siguiente:


1. Agrega las siguientes lneas en el archive /etc/security/limits.conf:
oracle
oracle
oracle
oracle

soft
hard
soft
hard

nproc
nproc
nofile
nofile

2047
16384
1024
65536

2. En el archivo /etc/pam.d/login, si es que no existe agrega en caso contrario modifica la siguiente


lnea:
session

required

pam_limits.so

3. Para que el shell por default tengan los valores adecuados en el usuario oracle cambia o agrega al
final la lnea al archivo /etc/profile.local ( si no existe entonces lo creamos):
# vi /etc/profile.local
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

IDENTIFICANDO Y CREANDO EL DIRECTORIO BASE DE ORACLE


Identificamos si existe el directorio base de oracle para darnos cuenta de esto debe existir el directorio
inventory de oracle para ello tecleamos:
# more /etc/oraInst.loc
Tambin identificando si existe el directorio home:
# more /etc/oratab
Ahora vamos a identificar si existe el directorio base:
# cat inventory/ContentsXML/oraclehomeproperties.xml

En caso de que no tengamos rastros de una instalacin previa de oracle entonces procederemos a la
creacin de los directorios para la instalacin de oracle.
CREACION DEL DIRECTORIO BASE DE ORACLE
Vamos a determinar nuestro mount_point que puede ser cualquiera de los siguientes, o bien una
propia:
/u01/app/oracle
/u01/app/orauser
/opt/oracle/app/oracle
Vamos a elegir el primero /u01/app/oracle
1.- Determinamos si existe espacio suficiente
# df -k
2.- Si es as entonces creamos los directorios con los correspondientes grupos propietarios y usuarios
propietarios, en caso contrario tendramos que liberar espacio.
# mkdir -p /u01/app
# chown -R oracle:oinstall /u01/app
# chmod -R 775 /u01/app/
CREANDO DIRECTORIOS PARA LOS ARCHIVOS DE RECUPERACIN
Vamos a ver si tenemos espacio suficiente tecleamos el comando:
# df -k

Segn el tipo de archivos debemos de revisar la siguiente tabla:


File Type
Database files

Recovery files

File System Requirements


Choose either:
A single file system with at least 1.5 GB
of free disk space
Two or more file systems with at least 1.5
GB of free disk space in total
Choose a file system with at least 2.4 GB
of free disk space

Teclea los siguientes commandos para crear los directorios y asignarles propietarios y permisos
adecuados:
Para los archivos del directorio de base de datos:
# mkdir /u01/app/oracle/oradata
# chown oracle:oinstall /u01/app/oracle/oradata
# chmod 775 /u01/app/oracle/oradata

La ruta del directorio de base de datos es $ORACLE_BASE/oradata.


Para los archivos del directorio de recuperacin (rea de recuperacin flash):
# mkdir /u01/app/oracle/flash_recovery_area
# chown oracle:oinstall /u01/app/oracle/flash_recovery_area
# chmod 775 /u01/app/oracle/flash_recovery_area

rea de recuperacin de flash es $ORACLE_BASE/flash_recovery. Aunque se recomienda que


coloques esta rea en un directorio este en un disco distinto del directorio de base de datos (database).

CONFIGURANDO EL DIRECTORIO TMP (opcional)


En caso de ser necesario podemos indicar nuestro directorio tmp en otra ruta si es que no tenemos por
lo menos 400 MB de espacio, por ejemplo en:
/u01/app/oracle/tmp

Y lo haremos con los siguientes comandos:


# su - oracle
$ mkdir /u01/app/oracle/tmp
$ chmod a+wr /u01/app/oracle/tmp

Ahora vamos a cambiar la variable de entorno para indicarle el nuevo directorio de tmp
vi /home/oracle/.profile
$ TMP=/u01/app/oracle/tmp
$ TMPDIR=/u01/app/oracle/
$ export TMP TMPDIR
$ exit

CONFIGURANDO VARIABLES DE ENTORNO DEL USUARIO DE ORACLE


Para ello debemos de conectarnos con el usuario oracle
# su - oracle
vi /home/oracle/.profile

Agregamos o editamos la siguiente lnea:


umask 022

6.- si las variables del entorno ORACLE_SID, ORACLE_HOME, o ORACLE_BASE se encuentran y


contienen valores entonces agregamos o modificamos el archivo con el siguiente.
$
$
$
$
$

ORACLE_BASE=/u01/app/oracle
ORACLE_SID=ORABUCB
export ORACLE_BASE ORACLE_SID
ORACLE_HOSTNAME=database.cbachilleres.edu.mx
export ORACLE_HOSTNAME

7.- Guardamos y salimos del editor


Cerramos sesin y entramos al sistema con el usuario oracle
Antes de iniciar la instalacin quitamos los valores de ORACLE_HOME and TNS_ADMIN para que
runInstaller ponga los propios:
$ unset ORACLE_HOME
$ unset TNS_ADMIN

Verificamos de que el entorno este bien con los siguientes comandos:


$ umask
$ env | more

Y despus de tanto configurar ahora si ejecutamos el instalador de oracle


oracle@database:/u01/app/database> ls
doc install response runInstaller stage welcome.html
oracle@database:/u01/app/database> ./runInstaller
Iniciando Oracle Universal Installer...
Comprobando el espacio temporal: debe ser mayor que 80 MB. Real 129480 MB Aprobado
Comprobando el espacio de intercambio: debe ser mayor que 150 MB. Real 3041 MB Aprobado
Comprobando el monitor: debe estar configurado para mostrar al menos 256 colores. Real 65536

Aprobado

Preparando
para
iniciar
Oracle
Universal
Espere...oracle@database:/u01/app/database>

Installer

desde

/tmp/OraInstall2008-04-14_06-06-34AM.

1. On the Select Installation Method page, you can select either Basic Installation or
Advanced Installation. Select Advanced Installation.
2. Select Installation Type. Youre given three choicesEnterprise Edition, Standard
Edition, and Custom. Choose Enterprise Edition.
3. On the Install Location page, specify the path for the Oracle base and Oracle home locations,
which is where the Oracle Universal Installer will install the database files. Click Next.

4. On the Product-Specific Prerequisite Checks page, the Oracle Universal Installer will
verify that your environment meets the minimum requirements for installing the various
products you want to install. These checks include the kernel parameters, swap space
requirements, validation of the Oracle base location, and network configuration requirements.
Its a good idea to go ahead and fix any warnings produced by the Oracle Universal
Installer at this stage, say by updating the kernel on a Linux system, although you can
get away with not doing so in most cases since the Oracle Universal Installer offers you
the choice of continuing despite a warning. Once you pass the requirement checks,
click Next.

Ahora segn lo que nos marca en la pantalla tecleamos:


oracle@database:~> su
Contrasea:
database:/home/oracle # /u01/app/oraInventory/orainstRoot.sh
Cambiando permisos de /u01/app/oraInventory a 770.
Cambiando el nombre de grupo de /u01/app/oraInventory a oinstall.
La ejecucin del archivo de comandos ha terminado
database:/home/oracle # /u01/app/oracle/product/11.1.0/db_1/root.sh
Running Oracle 11g root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.1.0/db_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:


Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

DESPUS DE LA INSTALACIN
Editar y modificar /etc/oratab y colocamos al final "Y":
ORABUCB:/u01/app/oracle/db:Y
# vi /etc/oratab
ORABUCB:/u01/app/oracle/db:Y

Para que Oracle inicie desde que arranque, creamos el archivo llamado oracle (o el que ms nos
agrade) colocamos este script en /etc/init.d con el siguiente contenido:
Nos logueamos como root y tecleamos lo siguiente:
# vi /etc/init.d/oracle

E introducimos el siguiente script de parada e inicio de oracle


#!/bin/bash
#
# /etc/init.d/oracle
#
### BEGIN INIT INFO
# Provides:
oracle
# Required-Start:
$network
# Required-Stop:
$network
# Default-Start:
3 5
# Default-Stop:
0 1 2 6
# Description:
Start the Oracle database
### END INIT INFO
#
# Run-level Startup script for the Oracle Listener and Instances
# It relies on the information on /etc/oratab
#
. /etc/rc.status
. /etc/sysconfig/sysctl
#
# First reset status of this service
rc_reset
export ORACLE_HOME="/u01/app/oracle/db"
export ORACLE_OWNER="oracle"

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi
case "$1" in
start)
# Oracle listener and instance startup
echo -n "Starting Oracle DB: "
echo -n $"Starting Oracle EM DB Console:"
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start"
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"
touch /var/lock/oracle
echo "OK"
;;
stop)

# Oracle listener and instance shutdown


echo -n "Shutdown Oracle: "
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
su - $ORACLE_OWNER -c $ORACLE_HOME/bin/dbshut $ORACLE_HOME
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop"
rm -f /var/lock/oracle
echo "OK"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: `basename $0` start|stop|restart|reload"
exit 1
esac
exit 0

Despus de salvar el archivo le damos permisos de ejecucin


# chmod 750 /etc/init.d/oracle
# chkconfig --add oracle --level 0356

NOTA: Si queremos que de manera automtica se inicie entonces tambin podemos utilizar insserv:
insserv -d /etc/init.d/nombre_servicio Registra un servicio
insserv -r /etc/init.d/servicio Quita un servicio
Que en nuestro caso, si no se hubiere levantado el servicio de oracle lo haramos con
# insserv d /etc/init.d/oracle

Ahora hay que agregar algunas lneas a /etc/profile


# vi /etc/profile

En la seccin de variables de entorno verificamos si existe y si no agregamos lo siguiente:


export
export
export
export
export
export

ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1
ORACLE_SID=ORABUCB
ORACLE_HOSTNAME=database.cbachilleres.edu.mx
LD_LIBRARY_PATH=$ORACLE_HOME/lib
PATH=$PATH:$ORACLE_HOME/bin

Hay que agregarnos al grupo dba. Podemos usar usermod o editar el archivo /etc/group y agregar al
final de la linea que empierza con dba nuestro usuario dba (my username is edilberto):
# vi /etc/group
dba:!:1000:oracle,edilberto

Ahora entramos con el usuario


# su - oracle

Se agrega al .profile a /home/oracle


$ cd /home/oracle
$ vi .profile
export
export
export
export
export
export

ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1
ORACLE_SID=ORABUCB
ORACLE_HOSTNAME=database.cbachilleres.edu.mx
LD_LIBRARY_PATH=$ORACLE_HOME/lib
PATH=$PATH:$ORACLE_HOME/bin

Luego loguearse como un usuario dba


# su - edilberto

En /u01/app/oracle/product/11.1.0/db_1/bin:
$ cd /u01/app/oracle/db/bin

ejecutar sqlplus
Y la instancia de la BD arrancara y desplegara un reporte de estado de la BD
$ sqlplus /nolog
SQL*Plus: Release 11.1.0.6.0 - Production on Thu Apr 17 18:36:34 2008
Copyright (c) 1982, 2007, Oracle.

All rights reserved.

SQL> connect / as sysdba


Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 634695680 bytes
Fixed Size
2147032 bytes
Variable Size
314576168 bytes
Database Buffers
310378496 bytes
Redo Buffers
7593984 bytes
Database mounted.
Database opened.
SQL> select INSTANCE_NAME,HOST_NAME,PLATFORM_ID,
PLATFORM_NAME,VERSION,DATABASE_STATUS
from v$instance,v$database;
2
3
INSTANCE_NAME
---------------HOST_NAME
PLATFORM_ID
---------------------------------------------------------------- ----------PLATFORM_NAME
-------------------------------------------------------------------------------VERSION
DATABASE_STATUS
----------------- ----------------ORABUCB
database
13
Linux 64-bit for AMD
11.1.0.6.0
ACTIVE

SQL> !cat /etc/issue


Welcome to SUSE Linux Enterprise Server 10 SP1 (x86_64) - Kernel \r (\l).

SQL> select * from v$version;


BANNER
-------------------------------------------------------------------------------Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
PL/SQL Release 11.1.0.6.0 - Production
CORE
11.1.0.6.0
Production
TNS for Linux: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production
SQL>

ERRORES COMUNES
database:/etc/init.d # insserv -d /etc/init.d/oracle
insserv: Service raw has to be enabled for service oracle
insserv: exiting now!
database:/etc/init.d # chkconfig raw on
database:/etc/init.d # insserv -d /etc/init.d/oracle
NO SE LEVANTA Enterprise Manager Database Control

$
$
$
$
$
$

emctl stop dbconsole


dbshut
lsnrctl stop
lsnrctl start
dbstart
emctl start dbconsole

También podría gustarte