ULACIT
Instalación de Servidores de Base de Datos Oracle en el Sistema Operativo Oracle Enterprise Linux 5.5.
Hecho porJonathan Sánchez Ugalde
Correo:[email protected]
2011
Instalación de Oracle en Linux
Índice
ULACIT ..................................................................................................... 1 Instalación de Servidores de Base de Datos Oracle en el Sistema Operativo Oracle Enterprise Linux 5.5. .................................................. 1
Índice ........................................................................................................ 2 Introducción: ............................................................................................. 3 Requisitos ................................................................................................. 4 Requisitos de Software ............................................................................. 5 Parámetros de Configuración .................................................................... 7
Parámetros del Kernel ........................................................................... 7 Recursos Límites Para el Usuario .............................................................. 9 Instalar el software de la base de datos ................................................. 13 Crear instancia por medio del DBCA: ...................................................... 28 Configurar el Listener .............................................................................. 42
Reconfigurar el Enterprise Manager .................................................... 43 Certificado de Seguridad en Enterprise Manager ................................ 44
Instalación de la base de Datos y configurar la instancia: ...................... 46
2 / 51
Instalación de Oracle en Linux
Introducción:
A continuación se presenta una guía paso a paso para la instalación de una base de datos Oracle en un sistema Operativo Linux, concretamente Oracle Enterprise Linux 5.5 tanto del sistema gestor de base de datos como de la instancia de la base de datos.
También se explica una serie de comandos y aspectos del entorno útiles para que una persona que no conoce sistemas tipo Unix/Linux puede realizar la instalación fácilmente.
Cabe resaltar que si bien la instalación se enfoca en Oracle Enterprise Linux es perfectamente compatible con Red Hat Linux y CentOS(este no está soportado oficialmente), así mismo sirve de referencia para la instalación en otro sistema GNU/Linux.
3 / 51
Instalación de Oracle en Linux
RequisitosTras la instalación del sistema Operativo tenemos que configurar ciertos parámetros:
Primero que todo los requerimientos:
Requisitos de Memoria
* Por lo menos 1 GB de RAM Para verificar el tamaño de tu RAM
grep MemTotal /proc/meminfo
* Espacio swap Para verificar el tamaño de tu espacio Swap
grep SwapTotal /proc/meminfo
Para el espacio swap se suele utilizar el doble de RAM o seguir por ejemplo la especificación de la siguiente tabla, todo depende del enfoque y tipo de hardware:RAM Disponible Espacio Swap RequeridoEntre 1 GB y 2 GB 1.5 veces el tamaño de la RAMEntre 2 GB y 16 GB Igual al Tamaño de la RAMMás que 16 GB 16 GB
Requisitos de Hardware
* 1 GB de espacio en el directorio /tmp
Tipo de Instalación Requerimientos de Archivos SW (GB)Enterprise Edition 3.95Standard Edition 3.88
Tipo de Instalación Requerimientos Para Datafiles (GB)Enterprise Edition 1.7Standard Edition 1.5
Para verificar el espacio utilizado y disponible, así como las particiones existentes podemos hacer uso del comando: df -k
4 / 51
Instalación de Oracle en Linux
Requisitos de Software
Depende de la distribución y versión de Linux instalado. Para este caso es compatible con RHEL 5.5, Oracle Linux 5.5 y CentOS
Se puede verificar la versión con el comando:cat /proc/version
* Kernel Requerido 2.6.18 Para verificar que la versión instalada: uname -r
* Paquetes Requeridos Todos son la versión mencionada o posterior.
binutils-2.17.50.0.6compat-libstdc++-33-3.2.3compat-libstdc++-33-3.2.3 (32 bit)elfutils-libelf-0.125elfutils-libelf-devel-0.125gcc-4.1.2gcc-c++-4.1.2glibc-2.5-24glibc-2.5-24 (32 bit)glibc-common-2.5glibc-devel-2.5glibc-devel-2.5 (32 bit)glibc-headers-2.5ksh-20060214libaio-0.3.106libaio-0.3.106 (32 bit)libaio-devel-0.3.106libaio-devel-0.3.106 (32 bit)libgcc-4.1.2libgcc-4.1.2 (32 bit)libstdc++-4.1.2libstdc++-4.1.2 (32 bit)libstdc++-devel 4.1.2make-3.81sysstat-7.0.2unixODBC-2.2.11unixODBC-2.2.11 (32 bit)unixODBC-devel-2.2.11unixODBC-devel-2.2.11 (32 bit)
5 / 51
Instalación de Oracle en Linux
Para verificar si tienes el paquete instalado, utiliza el siguiente comandorpm -q nombre_paquete
También se puede entrar al administrador de paquetes gráfico para verificar si se tienen instalado o instalar el paquete(requiere configurar repositorio de paquetes y acceso a internet), el comando es:pirut
De igual forma los paquetes se pueden conseguir en los repositorios de Internet o en el disco de la distribución de GNU/Linux que se esté utilizando.Para la instalación por consola utilizar como usuario root el comando:rpm -ivh nombredelpaquete.rpm
Nota: En una distribución GNU/Linux para cambiar de usuario se puede hacer mediante el comando:su nombredeusuarioSi se quiere cambiar al usuario root se puede obviar el usuario:suPara cargar variables de ambiente y configuraciones del usuario util para ejecutar ciertos comandos o programas directamente con el nombre sin ir a la carpeta especifica donde se encuentrasu -
6 / 51
Instalación de Oracle en Linux
Parámetros de ConfiguraciónUna vez que se tenga instalado el sistema operativo procedemos a realizar ciertas configuraciones que requiere el software de Oracle para trabajar correctamente:
Parámetros del KernelLos siguientes son parámetros que deben ser configurados en el archivo sysctl que se encuentra en la ruta /etc/systcl.confPara ver el valor puedes abrir directamente el archivo en /etc/sysctl.conf:more /etc/sysctl.confgedit /etc/sysctl.conf (en modo Gráfico con Gnome)Nota: para poder editarlo tienes que abrirlo como usuario root.También se puede verificar los valores con el comando:/sbin/sysctl -a | grep filtroEjemplo/sbin/sysctl -a | grep sem
Parámetro Valor Mínimo Descripcion
semmslsemmnssemopmsemmni
25032000100128
SemáforosSEMMNI: número máx de conjuntosSEMMSL: máx de semáforos por conjuntoSEMMNS: máx de semáforos del sistemaSEMOPM máx de operaciones por llamada opsem (múltiple operaciones de semáforo)
shmall 2097152 Total de páginas de la memoria compartida
shmmax Default: 536870912
Máximo de Memoria Compartida.Utilizada por el SGARestricciones en 32bitsSO 32bits =2GB max (1.7GB solo del SGA)SO 32bits PAE= 3GB (2.7GB solo del SGA)
shmmni 4096 Tamaño máximo de segmento de memoria compartida
file-max 6815744 Máximo de archivos abiertos.
ip_local_port_range Mínimo: 9000Máximo: 65500
Rango de ips
rmem_default 262144 Parámetro default para I/O red
rmem_max 4194304 Parámetro max para I/O red
7 / 51
Instalación de Oracle en Linux
Parámetro Valor Mínimo Descripcion
wmem_default 262144 Parámetro default para I/O red
wmem_max 1048576 Parámetro max para I/O red
aio-max-nr 1048576 Máximo de llamadas aio permitidas.
Nota sobre shmmax & shmallPor ejemplo si se da 80% del total de RAM a memoria compartida, un cálculo para estos valores es el siguiente:cat /proc/meminfo | grep MemTotalMemTotal: 24675512 kB
getconf PAGE_SIZE4096Entonces si el server tiene 24GB en RAM y un tamaño por página de 4096 el cálculo sería: echo -ne "kernel.shmmax = "; echo "((24675512 * 1024) * .80) / 1" | bc -qkernel.shmmax = 20214179430
echo -ne "kernel.shmall = "; echo "((24675512 * 1024) * .80) / 4096" | bc -qkernel.shmall = 4935102
Utiliza el siguiente comando para reiniciar los valores actuales que tiene el kernel con los nuevos que se establecieron:/sbin/sysctl -p
Para confirmar que los valores están correctos:/sbin/sysctl -a
8 / 51
Instalación de Oracle en Linux
Recursos Límites Para el Usuario
Debido a que el gestor de base de datos se va a ejecutar bajo el usuario oracle, hay que ajustar los parámetros límites del shell de dicho usuario. Para ello hay que editar el fichero /etc/security/limits.conf :
Estos son los valores recomendados por Oracle y se encuentran en el archivo:/etc/security/limits.conf y requiere que privilegios de root para modificarlo:
Recurso Límite del Shell Recurso Límite Soft Límite Hard
Descriptores de Open file nofile por lo menos
1024por lo menos 655
Numero de procesos disponibles a un solo usuario nproc por lo menos
2047por lo menos 16384
Tamaño del segmento stack del proceso stack por lo menos
10240 KBpor lo menos 10240 KB, y como max 32768 KB
Ejemplo:oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536
Para que estas configuraciones estén disponibles se requiere reiniciar el sistema.
Seguidamente crear el usuario oracle que se especifica en esta configuración.
9 / 51
Instalación de Oracle en Linux
Crear el usuario Oracle y los gruposTomando en cuenta de que esta es una instalación crear los siguientes grupos dba (puede que ya exista) y oinstall
Ejecutar los siguientes comandos como root:/usr/sbin/groupadd dba/usr/sbin/groupadd oinstall
Crear el usuario oracle y asignarle los grupos:/usr/sbin/useradd -c “Propietario de Software Oracle” -g oinstall -G dba oracle
Para cambiar el password del usuario, vamos a usar el siguiente comando passwd oracle
Crear los Directorios NecesariosLa ubicación de directorios tanto de la instalación como de los instaladores y de los datos depende del estándar de cada empresa o di se sigue el estándar de OFA, para esta instalación utilizamos la siguiente:
Creamos como root la siguiente estructura de directorios:mkdir /app/mkdir /app/oraclemkdir /app/instaladores
Cambiar el propietario de los directorio al usuario de oracle con:chown -R oracle:oinstall /app/instaladoreschown -R oracle /app/oracle
Como usuario oracle descomprimir los instaladores de Oracle en esa carpeta, si se descargaron los de GNU/Linux vienen divididos en 2 archivos comprimidos, el contenido de la carpeta (/database/stage) del segundo comprimido debe moverse dentro del contenido que se extrajo del primer archivo en la misma ruta (database/stage).
Los instaladores se copian al disco duro por motivos de rendimiento cuando se instala el software.
10 / 51
Instalación de Oracle en Linux
Configurando las variable de ambienteConfigurar las variables de ambiente para que estén disponibles para el usuario oracle se hace por medio del archivo .bash_profile que se encuentra en el carpeta home del usuario oracle normalmente /home/oracle.
#ruta a la carpeta base en la que se va instala software de oracleORACLE_BASE=/app/Oracle
#carpeta de instalación de los binarios de oracleORACLE_HOME=/app/oracle/product/11gR2
#nombre de la instancia de OracleORACLE_SID=linprod
#exportar como variables de entornoexport ORACLE_HOME ORACLE_SID ORACLE_BASE
#redefinir LD_LIBRARY_PATH agregándole las librerías de OracleLD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHexport LD_LIBRARY_PATH
#redefinir PATH agregándole la carpeta de binarios de OraclePATH=$ORACLE_HOME/bin:$PATHexport PATH
#establecer carpeta temporalTMPDIR=/tmpTMP=/tmpexport TMPDIR TMP
11 / 51
Instalación de Oracle en Linux
Ejemplo:
12 / 51
Instalación de Oracle en Linux
Instalar el software de la base de datos
Antes de iniciar el instalador es necesario establecer el comando para que los usuarios puedan ejecutar aplicaciones gráficas de X Server entonces abrir una terminal y abrir una sesión con el usuario root y ejecutar el comando:
xhost +
Antes de iniciar el instalador se requiere tener una resolución mínima de 1024x768, por lo que se tiene que verificar este aspecto y ajustarlo si es necesario, puede que el cambio de resolución requiera reiniciar el XServer.
13 / 51
Instalación de Oracle en Linux
Para iniciar el instalador ejecutar el siguiente comando desde la carpeta del instalador:
./runInstaler
14 / 51
Instalación de Oracle en Linux
Al iniciar el instalador solicitara que se digite el email y su usuario de la cuenta de Oracle si se quiere y/o tiene una cuenta digitarla,(para este caso los dejamos en blanco)
Seleccionar el tipo de instalación en este caso vamos a instalar solo el software posteriormente crearemos la instancia.
15 / 51
Instalación de Oracle en Linux
Seleccionamos la opción de Instalación de una instancia simple y le damos siguiente
16 / 51
Instalación de Oracle en Linux
Seleccionamos los lenguajes que va a tener el producto, por estándar es preferible dejar el lenguaje por defecto en inglés ya que mensajes y logs de errores es mucho más fácil buscarlos en ese idioma; y seleccionar los demás idiomas como secundarios.
17 / 51
Instalación de Oracle en Linux
Seleccionar el Tipo de producto a instalar, está parte es crítica ya que el tipo de producto involucrará en costos y características disponibles dependiendo también del hardware de la máquina. Para el ejemplo utilizaremos Enterprise Edition y dar click en siguiente.
18 / 51
Instalación de Oracle en Linux
Seleccionar la ruta de instalación La ruta estándar de instalación es primero el dispositivo o nodo “u01”, “u02”; luego “app” y luego “oracle”; sin embargo como es una instalación de prueba y no tenemos otros dispositivos de almacenamiento obviamos la parte del u01 de la siguiente forma/app/oracle como el Oracle Base (debe ser igual a la variable de ambiente relacionada)/app/oracle/product/11Gr2/ que es la ruta donde se instalará el software.
19 / 51
Instalación de Oracle en Linux
Para el Oracle Inventory lo dejamos en la ruta /app/oraInventory (/u01/app/oraInventory si en el paso anterior usamos u01).
20 / 51
Instalación de Oracle en Linux
Seleccionamos los privilegios al grupo dba del sistema operativo
21 / 51
Instalación de Oracle en Linux
Al llegar a este paso revisará que se cumplan todos los parámetros del kernel requeridos así como paquetes instalados, requisitos de hardware, permisos y otras configuraciones:
22 / 51
Instalación de Oracle en Linux
También nos indica que parámetros puede el corregir por medio de la ejecución de un script al dar clic en el botón Fix $ Check Again, le creará un script que el usuario debe correr como superusuario (root) en el sistema operativo para corregirlo
23 / 51
Instalación de Oracle en Linux
Como superusuario en una consola ejecutamos el script y cuando se haya ejecutado sin errores volvemos a la pantalla del instalador.Nota: pueden crearse varios script a ejecutar para corregir diversos problemas o configuraciones no establecidas.
Una vez que tenemos todos los requerimientos le damos siguiente.Nota:Por un bug en el instalador algunos requisitos como Physical Memory o Swap pueden mostrarse como no cumplidos auque si esten correctamente por lo que le damos en Igonre All y luego en siguiente:
24 / 51
Instalación de Oracle en Linux
Al final nos muestra un resumen de la instalación y damos clic en finish para proceder a instalarlo:
25 / 51
Instalación de Oracle en Linux
De igual manera si durante la instalación requiere la ejecución de algún script, nos indicará cuales son los script a ejecutar para después proseguir con la instalación.
Ejecutamos el script que nos indica oraInstRoot.sh y clic en OK del instalador:
26 / 51
Instalación de Oracle en Linux
Ejecutamos el segundo script root.sh y click en OK del instalador
Y Finalmente tendremos instalado el software de la base de datos
Al final nos muestra una ventana informativa con la instalación que acabamos de realizar.
Después de esta instalación se requiere crear la o las instancias de la base de datos para ello ejecutamos la herramienta dbca (database configuration assistant).
27 / 51
Instalación de Oracle en Linux
Crear instancia por medio del DBCA:
Para iniciar el instalador Database Configuration Assistant por medio de la consola ejecutamos el comando “dbca”:
28 / 51
Instalación de Oracle en Linux
Posteriormente seleccionamos Crear una base de datos y clic en siguiente
Seleccionamos el tipo de base de datos a utilizar, para el ejemplo de propósito General o Transaccional.
29 / 51
Instalación de Oracle en Linux
Digitamos el nombre de la instancia de la base de datos SID así como el global database name que generalmente se usa el nombre del SID más el del dominio de la empresa u organización:
30 / 51
Instalación de Oracle en Linux
En este paso seleccionamos si se desea configurar el Enterprise Manager con la instancia, el EM es la herramienta de consola adminsitriva web utilizada para configurar y manejar las bases de datos en el servidor.
Para este paso requiere que el LISTENER de la base de datos se este ejecutando por lo que procedemos a hacerlo:
31 / 51
Instalación de Oracle en Linux
Primeramente verificamos el estadk con el siguiente comandolsnrctl STATUS
Si está Detenido procedemos a Iniciarlo con el comandolsnrctl START.
32 / 51
Instalación de Oracle en Linux
Seleccionamos los password de los usuarios por defecto
Especificamos la ruta donde se guardarán los datafiles de la base de datos, también nos permite especificar el ASM si tenemos disponible.
33 / 51
Instalación de Oracle en Linux
Seleccionamos la ruta donde se almacenara loa información del Flash Recovery Area, por su naturaleza se recomienda que este area sea en un dispositivo diferente a donde se encuentra el sistema gestor o los datos de la base de datos, también permite estableceer el uso de Archiving para la instancia.
34 / 51
Instalación de Oracle en Linux
En esta sección podemos indicar los script a ejecutar posterior a la creación de la base de datos, si tenemos información de catálagos o restauración de base de datos por un script, etc.
35 / 51
Instalación de Oracle en Linux
Configurar la cantidad de memoria a utilizar para el SGA y PGA dentro del funcionamiento de la instancia según las necesidad y características de hardware.
Otro aspecto importante es el del set de caracteres, se recomienda WE8MSWIN1552, así como la definición de la localización.
36 / 51
Instalación de Oracle en Linux
En Connection Mode da la posibilidad de elegir si nuestro Server permitirá conexiones compartidas (recursos entre múltiples usuario) o si trabajará con una conexión individual por cliente.
En Sizing permite definir el numero de procesos que permitirá Oracle que se conecten como máximo, el tamaño del bloque se configura dependiendo de la elección del tipo de base de datos para este caso Multipropósito o Transaccional:
37 / 51
Instalación de Oracle en Linux
En esta pantalla se pueden definir la configuración de los archivos de configuración, crear grupos de los Redo Log así como especificar multiplexación entre otras características.
Al final seleccionamos crear la base de datos y clic en finish.
38 / 51
Instalación de Oracle en Linux
Nos muestra un resumen de lo que va a realizar y las configuraciones correspondientes que se eligieron
39 / 51
Instalación de Oracle en Linux
Se inicia el proceso de instalación:
40 / 51
Instalación de Oracle en Linux
Al final muestra un informe de la instalación:
41 / 51
Instalación de Oracle en Linux
Configurar el Listener
Para crear o configurar el listener o se tiene alguna configuración no correcta se puede acceder al Oracle Net Manager para realizar estas tareas:Que permite por ejemplo configurar diferentes listener y el puerto a utilizar por los mismos.
El comando para ejecutarlo es
netmgr
42 / 51
Instalación de Oracle en Linux
Enterprise Manager:
Para levantar la consola administrativa (Enterprise Manager) se ejecuta el siguiente comando:emctl start dbconsole
Para detenerla:emctl stop dbconsole
Reconfigurar el Enterprise Manager
Si por algún motivo el Enterprise manager no inicia dando un error de OC4J, el motivo es que no se ha configurado correctamente su conexión con la instancia o se perdió o se corrompió. La solución es volver a configurarlo:
Para volver a configurarlo se utiliza el comando:
Desde la carpeta bin del Oracle Home
cd $ORACLE_HOME/bin
Ejecutamos el siguiente comando y seguir las instrucciones:
./emca -config dbcontrol db -repos create
Lo cual creara el repositorio.
Si queremos eliminar el actual y crear uno nuevo ejecutamos el siguiente comando y posteriormente el anterior:
Desde la misma ruta ($ORACLE_HOME/bin) ejecutamos
./emca -deconfig dbcontrol db -repos drop
43 / 51
Instalación de Oracle en Linux
Certificado de Seguridad en Enterprise ManagerAl entrar en la ruta que se configuró para el EM el navegador muestra algún mensaje referente al certificado de seguridad, damos clic en Add Exception
Clic en Get Certificate:
44 / 51
Instalación de Oracle en Linux
Ahora si se puede entrar correctamente al EM
45 / 51
Instalación de Oracle en Linux
Instalación de la base de Datos y configurar la instancia:
Nota: Se puede ver la instalación especificada anteriormente si se requiere algún detalle más preciso sobre un paso similar.
Al iniciar el instalador y llegar al paso dos: Seleccionamos la primera opción Create and configure a database y dar clic en next.
46 / 51
Instalación de Oracle en Linux
Seleccionar la primera opción par crear una instancia simple, la otra opción es para cluster de base de datos:
Al llegar al paso 3 seleccionar la opción que más convenga de acuerdo a su objetivo, para este caso seleccionamos Desktop Class.
47 / 51
Instalación de Oracle en Linux
Seleccionar el Oracle base en este caso no se usa /u01 en las rutas el cual se usa generalmente, pero por motivos de que no se tienen otros dispositivos o nodos lo obviamosAquí se define el Oracle base , la ruta de instalación, donde se guardarán los data files, el set de caracteres, el grupo del sistema operativo y el password a utilizar.
Si se tiene algún problema se lo indica con un mensaje ejemplo un password muy débil o que el espacio libre en disco no es suficiente:
48 / 51
Instalación de Oracle en Linux
En esta sección nos especifica que estén correctas todas las variables, paquetes y requisitos, si existe algún problema de configuración como las variables de ambiente, los parámetros del kernel entre otros, nos permite corregirlo mediante la ejecución de scripts como superusuario.Nota: Es posible que por un error en el instalador muestre que la memoria y el swap fallan por lo que le seleccionamos ignore all y luego next.
49 / 51
Instalación de Oracle en Linux
Muestra el resumen de lo que va a realizar durante la instalación según lo seleccionado en el instalador
Al dar clic en Finish inicia la instalación, si se tiene algún problema, mostrará una pantalla como la siguiente indicándolo, así mismo si requiere la ejecución de un script lo solicitará por medio de una ventana indicando el script y que debe ejecutarlo como superusuario (root)
50 / 51
Instalación de Oracle en Linux
Bibliografía:
“Estándares de Configuración para Servidor Oracle en Linux RHES 4.0”Ronald Vargas.
“Oracle 11g R2 sobre CentOS 64“http://ticframework.blogspot.com/2011/01/oracle-11g-r2-sobre-centos-64.htmlVictor Adsuar
“Installing Oracle Database 11g R1 on Linux - (RHEL 5)“http://www.idevelopment.info/data/Oracle/DBA_tips/Linux/LINUX_20.shtmlJeff Hunter
“Installing Oracle Software and Building the Database” Tutorial Oracle
Requisitos Para Instalar Oracle 11gR2 en Linux x86 para RHEL5 http://oracleenespanol.blogspot.com/2010/12/requerimientos-para-instalar-oracle.html
“Installing 11gR2 on Red Hat Linux 5”http://burzaco.wordpress.com/2010/07/08/installing-11gr2-on-red-hat- linux-5/ Juan Andres
51 / 51