Instalar Oracle 11gR2 en Linux Centos 5.5

Trabajaremos como usuario root, no es aconsejable pero lo haremos mientras la instalación de de las dependencias del sistema operativo Centos 5.5 que necesita Oracle en su instalación.

El software que se empleo:

●     Sistema operativo: Centos 5.5 de 32 bits

●     Version de oracle: 11gR2

A tener en cuenta:

●     Importante tenerle un nombre host (hostname) al equipo servidor donde se instalara oracle, en nuestro caso lo llame oracleserver.

●     Debemos estar conectados a internet.

●     Esta guia servirá a los usuarios de Red Hat 5.5

Esta guia contiene los siguientes pasos:

PASO 1: Verificar dependencias Centos 5.5

PASO 2: Crear usuarios y grupos para Oracle 11g

PASO 3: Configurar algunos parámetros del sistema operativo

PASO 4: Crear un directorio y sus permisos  para la base de datos y su instalación.

PASO 5: Descomprimir Oracle 11g R2 para instalar.

PASO 6: Instalar base de datos.

PASO 7: Como crear la base de datos.

Autor.

Empecemos…

PASO 1: Verificar dependencias Centos 5.5

1. Actualizar kernel del sistema operativo:

Así actualizamos el kernel de centos 5.5:

[root@oracleserver /]# yum update kernel

(Importante reiniciar linux despues de actualizado el kernel)

Luego actualizamos los paquetes kernel-headers y kernel-devel(este ultimo yo acostumbro hacerlo, pero la desimantación oficial no esta, debo hacer esta aclaración)

[root@oracleserver /]# yum install kernel-headers kernel-devel

2.. Instalar o verificar que se encuentran los siguientes paquetes en el sistema:

binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel pdksh

Verificamos que las librerias esten instaladas:

[root@oracleserver /]# rpm -qa binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel pdksh

3. Instalar dependencias

De lo contrario las instalamos

[root@oracleserver /]# yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers kernel-devel ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel pdksh

Yo sugiero dar de este ultimo comando ya que nos verifica y ademas nos instala o actualiza los paquetes hagan falta.

Los repositorios oficiales que trae Centos son suficientes para poder satisfacer estas dependencias o librerias o paquetes, NO se necesitan de repositorios extras.

PASO 2: Crear usuarios y grupos para Oracle 11g

1. Crear grupos en el sistema llamados oinstall y dba:

[root@oracleserver /]# groupadd oinstall

[root@oracleserver /]# groupadd dba

2. Crear usuario oracle en el sistema y perteneciente a los grupos oinstall y dba (verificamos si el usuario existe con el comando id oracle)

[root@oracleserver /]# useradd -g oinstall -G dba oracle

Si ya existe en usuario oracle, dar este comando para unirlo a los grupos anteriores:

[root@oracleserver /]# usermod -g oinstall -G dba oracle

Ademas le creamos una contraseñaa al usuario:

[root@oracleserver /]# passwd oracle

PASO 3: Configurar algunos parámetros del sistema operativo

1. Abrimos el archivo sysctl.conf que se encuentra ubicado en /etc y añadimos las siguientes lineas

[root@oracleserver etc]# gedit sysctl.conf

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586

2. Verificamos que los cambios esten bien realizados con el comando:

[root@oracleserver etc] /sbin/sysctl -p

asi:

[root@oracleserver etc]# /sbin/sysctl -p

net.ipv4.ip_forward = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.accept_source_route = 0

kernel.sysrq = 0

kernel.core_uses_pid = 1

net.ipv4.tcp_syncookies = 1

kernel.msgmnb = 65536

kernel.msgmax = 65536

kernel.shmmax = 4294967295

kernel.shmall = 268435456

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586

3. Agregamos mas poder al sistema del usuario oracle:

Incrementar los limites del shell del usuario oracle, así lo denomina la desimantación oficial.

Abrimos el archivo limits.conf que se encuentra ubicado en etc/security/limits.conf :

(gedit es el editor de texto, existen otros pero este se instala ademas es excelente, tambien lo puede hacer con vi o nano o el editor que desee)

[root@oracleserver /]# gedit /etc/security/limits.conf

Agregamos lo siguiente:

oracle           soft              nproc                            2047

oracle           hard               nproc                            16384

oracle           soft               nofile                            1024

oracle           hard              nofile                            65536

Luego vamos al archivo login ubicado en /etc/pam.d/login:

[root@oracleserver /]# gedit /etc/pam.d/login

y agregamos la siguiente linea:

session    required     pam_limits.so

PASO 4: Crear un directorio y sus permisos  para la base de datos y su instalación.

1. Verificar espacio suficiente en disco:

Se debe verificar en el sistema que exista un buen espacio (de 4 a 6 gigas) en el disco duro con el comando df -h /nombre del directorio o particiónejemplos:

[root@oracleserver /]# df -h /home

[root@oracleserver /]# df -h /opt

[root@oracleserver /]# df -h /

(Verifica la partición donde quedara el directorio oracle)

Para nuestro caso crearemos un directorio llamado oracle en /var/lib asi:

[root@oracleserver /]# mkdir /var/lib/oracle

(este sera nuestro ORACLE_HOME)

Le puede dar le nombre que desee al directorio y el lugar también podría ser el en el directorio /home del usuario oracle)

2. Asignar usuario y grupo al directorio oracle y sus respectivos permisos

Luego procedemos a darle permisos de usuario y grupo a ese directorio así:

Asignar usuario y grupo

[root@oracleserver /]# chown -R oracle:oinstall /var/lib/oracle

Permisos lectura escritura ejecucion

[root@oracleserver /]# chmod -R 775 /var/lib/oracle

Debe estar en el usuario llamado oracle y debe pertenecer al grupo oinstall

Los permisos de lectura escritura deben ser 775

3. Declarare variable de entorno:

Declaramos la variable de entorno en el archivo /etc/profile si queremos que todos los usuarios tengan derecho a oracle o en .bash_profile de cada usuario, este ultimo archivo .bash_profile se encuentra en /home/nombre_usuario y es un archivo oculto porque inicia su nombre con un signo punto ( . ), (lo podemos ver con el comando ls -a) Simplemente lo editamos (con gedit, vi, nano, el editor que deseemos y con permisos de root) y le agregamos las siguientes lineas:

ORACLE_HOME=/var/lib/oracle

ORACLE_SID=sales

export ORACLE_HOME ORACLE_SID

Importante aclarar que la ruta ORACLE_HOME=/var/lib/oracle pertenece al directorio que se creo anteriormente.

Yo acostumbro ponerlo en /etc/profile pero por seguridad es mejor que se le asigne a cada usuario su variable de entorno, en profile TODOS los usuarios del sistema tienen acceso a Oracle.

Para el caso de el archivo /etc/profile, cerramos y guardamos y ejecutamos el siguiente comando para que actualice:

[root@oracleserver etc]# source profile

Debemos ejecutar ese comando dentro del directorio /etc

Luego verificamos que la variable ya este registrada en el sistema:

[root@oracleserver /]# set | egrep ORACLE_HOME

Y alli nos debe aparecer la ruta donde configuramos la variable de entorno

[root@oracleserver etc]# set | egrep ORACLE_HOME

ORACLE_HOME=/var/lib/oracle

PASO 5: Descomprimir Oracle 11g R2

1. Copiar los 2 archivos de la base de datos de Oracle a la carpeta /home del usuario oracle

/home/oracle

Descomprimimos EN EL MISMO DIRECTORIO los dos archivos empleando el comando unzip:

Primero:

unzip linux_11gR2_database_1of2.zip

Segundo:

unzip linux_11gR2_database_2of2.zip

Al descomprimir los dos archivos .zip, genera un solo y único directorio denominado database.

Luego les cambiamos los permisos de usuario y grupo a ese directorio database así:

[root@oracleserver /]# chown -R oracle:oinstall database

Debemos estar ubicados en el directorio donde se descomprimio la base de datos para dar este comando

El comando anterior me permite cambiar el usuario y grupo de la siguiente manera:

chown: Comando cambiar permisos de usuarios y grupos en linux

-R: me indica que es un directorio completo junto con los archivos y directorios que se encuentren incluidos dentro de este a los cuales se les cambiaran los permisos de usuario y grupo.

oracle: es el nombre del usuario al que se le asignara el directorio database

oinstall: Es el nombre del grupo al que pertenecerá en directorio database.

Importante recordar que usuario y grupo debe estar creado previamente en el sistema operativo.

Alli va nuevamente el comando:

[root@oracleserver /]# chown -R oracle:oinstall database

El comando lo di dentro de la ubicacion /home/oracle ya que el directorio database lo descomprimí alli.

En ese directorio que se creo llamado database, se encuentra un archivo llamado runInstaller, y lo ejecutamos para iniciar con la instalación de oracle 11gR2 en linux.

PASO 6: Instalar base de datos.

En el directorio database que se creo luego de descomprimir los archivos de oracle, se encuentra un archivo llamado runInstaler, lo ejecutamos así:

[root@oracleserver oraInventory]# ./runInstaler

Para iniciar con la instalación de Oracle 11gR2.

A continuación aparecera un una serie de ventanas para seleccionar la instalación que deseemos, pero es importante resaltar las ventanas a continuación:

Si cumple con todas las dependencias del sistema, espacio en disco, grupos y usuarios, ORACLE_HOME,  en pocas palabras todo lo expresado en los pasos anteriores de este tutorial. El mensaje apropiado debe ser como el que aparece en el siguiente pantallazo:

De no satisfacer alguno de esas características del pantallazo anterior, NO se podrá proseguir con la instalación.

En un momento de la instalacion, ya cuando estemos finalizandala, aparecera una ventana con un mensaje como el siguiente:

Importantísimo realizar este par de comandos en las rutas que nos muestran, pero ATENCION, estas varian de acuerdo al ORACLE_HOME y el home de nuestro usuario oracle donde trabajamos. En nuestro caso emplee como ORACLE_HOME la ruta /var/lib/oracle.

Estos comandos generan loo siguiente.

Comando orainstRoot.sh

Dar el comando sh orainstRoot.sh ubicado en /home/oracle/app/oraInventory (para nuestro caso)

[root@oracleserver oraInventory]# ls

ContentsXML       logs                     oraInst.loc     oui

install.platform  oraInstaller.properties  orainstRoot.sh

[root@oracleserver oraInventory]# sh orainstRoot.sh (la respuesta del comando es la que sigue)

Cambiando permisos de /home/oracle/app/oraInventory.

Agregando permisos de lectura y escritura para el grupo.

Eliminando permisos de lectura, escritura y ejecución para el público.

Cambiando el nombre de grupo de /home/oracle/app/oraInventory a oinstall.

La ejecución del archivo de comandos ha terminado

Comando sh root.sh

Nos ubicamos en nuestro ORACLE_HOME y damos el comando root.sh

[root@oracleserver oracle]# sh root.sh

Running Oracle 11g root.sh script…

The following environment variables are set as:

ORACLE_OWNER= oracle

ORACLE_HOME=  /var/lib/oracle

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.

Si todo sale bien y se logro instalar satisfactoriamente la base de datos Oracle 11gR2 de acuerdo a las características que se deseen, el mensaje de satisfacción sera  como el siguiente:

PASO 7: Como crear la base de datos.

1. Cuando la base de datos este instalada (Paso 6), debemos crear nuestra base de datos.

En nuestro directorio ORACLE_HOME (/var/lib/oracle) hay un directorio llamado

oui y dentro de este ultimo uno llamado bin (ORACLE_HOME/oui/bin), alli hay archivo llamado runInstaller (que NO es el mismo archivo del directorio database que estaba en /home/oracle) y lo ejecutamos así:

(Para ejecutar ./runInstaler debemos estar logueados como usuario oracle, ya que no permite ejecutarlo como usuario root.)

[oracle@oracleserver bin]$ pwd

(pwd me indica la ruta donde estoy ubicado en el sistema)

/var/lib/oracle/oui/bin

[oracle@oracleserver bin]$ ls

addLangs.sh                            filesList.bat                                     resource                                     runSSHSetup.sh

addNode.sh                            filesList.properties               runConfig.sh

attachHome.sh                ilesList.sh                                      runInstaller

detachHome.sh                lsnodes                                           runInstaller.sh

[oracle@oracleserver bin]$ ./runInstaller

o tambien:

[oracle@oracleserver bin]$ sh runInstaller.sh

Aparecera un asistente de instalación así:

Bueno, para un próximo manual les guiare en un paso a paso de este ./runInstaler para crear la base de datos.

Por lo pronto les aseguro que si siguieron al pie de la letra este paso a paso, Oracle estará correctamente instalado en su sistema operativo Linux Centos 5.5

Autor

Ferney Gonzalez Aguirre

Ingeniero de sistemas

Tutorial  en Slideshare:

Instalar Oracle Centos 5.5

Tutorial en Google docs:

Instalar Oracle Centos 5.5

Anuncios

Los comentarios están cerrados.

A %d blogueros les gusta esto: