Instalación de Base de Datos Oracle 11g en
Oracle Enterprise Linux
2
Ronald Vargas Q., Twitter: @rovaqueOracle ACE
Director of Technology LAOUC
Technical Sales Consultant, Netsoft Oracle VAD Costa Rica y Guatemala
Responsable del OTN TOUR CA.
Blog: oracledbacr.blogspot.com +125000 visitas
– Oracle Database 11gR2 Sales-PreSales Specialist Assessment– Oracle Database Security 11gR2 Sales-PreSales Specialist Assessment– Oracle Real Application Clusters 11g PreSales Specialist Assessment– Oracle GoldenGate Presales Specialist Assessment– Oracle Linux PreSales Specialist– MySQL Presales Specialist– Consultor DBA ORACLE / INFORMIX+22 años– Instructor de Oracle University, Top 10 Latinoamérica 2005– Fundador ORAUGCRC, Coordinador ORAUGGT, ORAUGHN, ORAUGSV– Miembro IOUC, Comunidad Oracle Hispana, OracleMania– Expositor OTN TOUR DAY 2011 LAD y próximo OTN TOUR 2012 3era Edición.– Profesor ULACIT
3
Porqué utilizaruna base de datos
Oracle ?
Oracle Database 11g
4
Oracle Database 11g
5
+30000 Productos
Oracle Database 11g
6
• Escalabilidad• Alta Disponibilidad• Seguridad• Contingencia• Rendimiento• Respaldos y Recuperación• Administración• Migración
Valor Agregado
Oracle Database 11g
7
Oracle Corporation reclama el haber sido:
– The first commercially available SQL-based database (1979)– The first database to support symmetric multiprocessing (SMP) (1983)– The first distributed database (1986)– The first database product tested to comply with the ANSI SQL standard
(1993)– The first 64-bit database (1995)– The first database to incorporate a native JRE (1998)– The first proprietary RDBMS to become available on Linux (1998)– The first database to support XML (1999)
Oracle Database 11g
8
Qué es una base de datos Oracle ?
Oracle Database 11g
9
Oracle Database 11g
10
Dónde puede ser ejecutadauna base de datos
Oracle ?
Oracle Database 11g
11
Oracle Database 11g
12
Qué es relevante auna base de datos
Oracle ?
Oracle Database 11g
13
Rendimiento de una base de datos Oracle, esta dada por la ecuación:
CPU + MEMORIA + I/0
Recuperación de datos en memoria es
1/10000 mejor
que hacerlo a disco
Oracle Database 11g
14
Oracle Database 11g
15
Cuál es la plataforma de hardware y software
Adecuada parauna base de datos
Oracle ?
Oracle Database 11g
16
Oracle Database 11g
17
Oracle Database 11g
18
Cisc ( Intel/AMD ) o
Risc ( SUN, HP/UX, IBM )???
19
CISC –enfasis en hardwarePara tamaño de código de
instrucciones pequeñas
RISC –enfasis en softwareTamaño de código de instrucciones grandes
Oracle Database 11g
20
Microprocesadores CISC: objetivo alcanzar la velocidad a través de un conjunto rico de instrucciones, que necesitan menos pasos para completar una tarea.
Microprocesadores RISC: requieren más instrucciones para completar una determinada tarea, pero se centran en la reducción del número de ciclos que tarda en completar la misma.
Tiempo muerto entre instrucciones
Speed = (Instructions/Task) * (Cycle/Instruction) * (Time/Cycle)
RISC CISC
10% >50%
Oracle Database 11g
Costo Servidor sin NAS/SAN
RISC CISC
> $20.000,00 $7.000,00
Sistemas OperativosRISC CISC
UNIX ( Solaris, AIX,HP/UX) WINDOWS/LINUX
21
Qué versiones tenemosdel software
de base de datos Oracle ?
Oracle Database 11g
22
Oracle Database 11g
23
Express Edition
Standard Edition One
Standard Edition
Enterprise Edition
Non-Oracle developers, open source developers, new
DBAs, students, non-Oracle ISVs, hw vendors
Low-price option for SMB/LOB Deployments,
ISVs who need a supported Oracle database
Full-featured database for SMBs with optional clustering
support (up to 4 CPUs)
Large-scale Enterprises that demand high-performance BI (ETL, DW, OLTP), security, scalability, availability, etc.
FREE $180/user (min. 5) or $5,800
per Processor (CPU)**
$350/user (min.10)or $17,500
per Processor (CPU)**
$950/user (min. 25)or $47,500
per Core** (multipliers apply)
< 20 users < 400 users 400-1000 users > 1000 users
Uses 1 CPU< 4GB DB size
1 instance per CPUUse up to 1GB RAM
2 CPU
< 500GB DB size*
Single or clustered up to 4 CPUs
< 500 GB DB size*
4+ CPUs
> 500 GB DB size*
Free OTN Community Forum
Fee-based Support available
Fee-based Support available
Fee-based Support available
Oracle Database 11g
24
Cómo se pueden clasificarlas bases de datos
Oracle ?
Oracle Database 11g
25
Tipos de bases de datos en Oracle
• OLTP - transaccional• OLAP – procesamiento por lotes (DW )• Multipropósito – transaccional y reportería
2K 4K 8K 16K 32K 64KOLTP DW
Oracle Database 11g
26
Cuánta memoria necesitoPara ejecutar
una base de datos Oracle ?
Oracle Database 11g
27
Rendimiento RDBMS Fórmula= CPU+MEMORIA+I/O
Tipo Procesador ( INTEL, AMD, RISC ) + Sistema Operativo ( Windows, Linux, Unix )
Memoria:1. Caché sistema operativo ( 40%)
2. Instancia de la base de datos ( - 50% memoria física )
3. Memoria de procesos background ( 90MB a 145MB )
4. Memoria usuarios conectados a la base de datos ( Cliente/Servidor, Web – 3 capas, múlti-hilo ( JAVA )
5. Procesos de respaldo y monitoreo
6. Instancia ASM ( 280MB a 350MB )
APLICATIVO CONSUMO
Java 12-15MB
Página de Oracle JSP 32 MB
Serverlet 24 MB
Forms & Reports 15 a 20 MB
Oracle Database 11g
28
Oracle Database 11g
Ejemplo1:
Servidor para BD Oracle 11gR2, con 50 usuarios cliente/servidor Developer.
S.O.: LINUX con 4GB RAM FISICO:
Instancia: 800MB Background: 108MB Usuarios:50x 22MB=1.1GB
Caché: 1.6GB 800MB+108MB+1.1GB = 2GB
Libres= 400MB
29
Insuficiente me
moria
Intercambio de
contexto
Swaping
Bajo rendimi
ento
Oracle Database 11g
30
Qué tipo de almacenamientoes el más recomendado
parauna base de datos
Oracle ?
Oracle Database 11g
31
Oracle Database 11g
32
Redundant Array of Independent Disks
NESTED ARRAYOLTP
OLAP
Oracle Database 11g
33
Cómo se licenciael software de
una base de datos Oracle ?
Oracle Database 11g
34
Licenciamiento de Productos Oracle
– Productos con la palabra “Standard”, por procesador (socket físico )
– Productos con la palabra “Enterprise” ó sin la palabra “Standard” por core
– Productos Standard y Enterprise con NUP - Usuarios nombrados- con base a los mínimos
Licencias requeridas para Productos Enterprise
( Procesadores * cores ) / Factor Conversión
Oracle Database 11g
35
Oracle Database 11g
36
Qué piensa Oracle Corporationsobre la utilización de Linux
enuna base de datos
Oracle ?
Oracle Database 11g
37
OR
Oracle Database 11g, Dónde?
38
Linux S.O. Arquitectura y componentes
Oracle Database 11g, Dónde?
39
Oracle Database 11g, Dónde?
40
• Un 76.8% de los sistemas, están compuestos por procesadores del fabricante INTEL y tan sólo un 12.6% por su competidor AMD.
• Cada vez más, la gente utiliza menos Windows. Un total de 91.4% de los sistemas en el TOP500 corren utilizando LINUX, mientras que sólo 30 sistemas están basados en sistema operativo UNIX. Windows de Microsoft, sobrevive en el TOP500 con "UN SOLO SISTEMA".
• Hace 10 años atrás, UNIX representaba el 88.6% del TOP500, mientras que LINUX tenía presencia de sólo 39 sistemas, lo que refleja, el giro de 180 grados, que ha dado el mundo, en su preferencia a favor de LINUX.
Oracle Database 11g, Dónde?
41
Oracle Database 11g, Dónde?
42
• Primer sistema propietario RDBMS disponible en Linux (1998)• Oracle Linux es el mejor Linux para las necesidades informáticas
de su empresa.• Oracle Database continua siendo el #1 con Linux con 75.8% del
mercado compartido (Gartner) • Más de un 40% de las instalaciones de Oracle Real Application
Cluster están en Linux • Más de un 30% de los Oracle E-Business Suite se venden con
Linux
Oracle Database 11g, Dónde?
43
• Rápido—Tiene el mejor rendimiento; 75% más veloz que Red Hat Enterprise Linux
• Moderno—Soporta sistemas grandes y pequeños, rastrea la línea principal de Linux y le acerca las últimas novedades a los clientes
• Confiable—Brinda integridad de datos, seguridad superior, y un tiempo de actividad de la aplicación mejorado
Oracle Database 11g, Dónde?
44
• Optimizado para Oracle—Construido para Oracle Exadata Database Machine, Oracle Exalytics In-Memory Machine, Oracle Exalogic Elastic Cloud y Oracle Database Appliance
• Linux Management y alta disponibilidad—Disponible para los clientes del soporte de Oracle Linux sin costo adicional
• El único sistema operativo que ofrece modificación del tiempo de inactividad cero—Actualiza el núcleo Linux mientras se está ejecutando sin tener que reiniciar
Oracle Database 11g, Dónde?
45
Oracle Database 11g
46
Cómo obtener el softwarede
una base de datos Oracle ?
Oracle Database 11g
47
Oracle Database 11g
48
Oracle Database 11g
49
Unbreakable Enterprise Kernel
50
Unbreakable Enterprise Kernel
Fast, Modern, and Reliable Linux Kernel
Unbreakable Enterprise Kernel is based on a stable 2.6.32 kernel and includes optimizations developed in collaboration with Oracle’s Database, Middleware and Hardware engineering teams to ensure stability and optimal performance for the most demanding enterprise workloads.
Oracle Linux also includes a Red Hat compatible kernel, compiled directly from Red Hat Enterprise Linux source.
Existing Applications Run Unchanged
51
Extreme PerformanceUnbreakable Enterprise Kernel has been engineered and tested with performance in mind and internal benchmarks show tremendous performance improvements compared to a standard Enterprise Linux 5 kernel (2.6.18-194).
Unbreakable Enterprise Kernel includes enhancements and bug fixes to improve virtual memory performance, network and disk I/O performance as well as improvements for large
Unbreakable Enterprise Kernel
52
Tested and Recommended by Oracle
Oracle uses Unbreakable Enterprise Kernel exclusively for building and testing of Oracle software including:
– Fusion Middleware and – Oracle Database.
Unbreakable Enterprise Kernel is also included in Oracle Exadata and Oracle Exalogic.
Unbreakable Enterprise Kernel
53
Oracle announced in March the Unbreakable Enterprise Kernel Release 2, which is an Oracle kernel that can be used to replace the stock Red Hat kernel for Oracle Linux.
Instead of the 2.6.x kernel used in RHEL 6, Oracle's kernel is based on the 3.0.16 mainline Linux kernel.
Unbreakable Enterprise Kernel
54
Unbreakable Enterprise Kernel
55
Unbreakable Enterprise Kernel
56
Instalación BD Oracle en Linux
57
Instalación BD Oracle en Linux
Paso 1
Debemos modificar o agregar las siguientes líneas en el archivo “/etc/sysctl.conf”:
• fs.file-max = 6815744• kernel.shmall = 2097152• kernel.shmmax = 536870912• kernel.shmmni = 4096• # semaphores: semmsl, semmns, semopm, semmni• kernel.sem = 250 32000 100 128• net.ipv4.ip_local_port_range = 9000 65500• net.core.rmem_default=4194304• net.core.rmem_max=4194304• net.core.wmem_default=262144• net.core.wmem_max=1048586
58
• rpm -Uvh binutils-2.*• rpm -Uvh compat-libstdc++-33*• rpm -Uvh compat-libstdc++-33*.i386.rpm• rpm -Uvh kernel-headers-2.*• rpm -Uvh glibc-headers-2.*• rpm -Uvh glibc-devel-2.*• rpm -Uvh elfutils-*• rpm -Uvh elfutils-lib*• rpm -Uvh elfutils-libelf-*• rpm -Uvh elfutils-libelf-devel-*• rpm -Uvh gcc-4.*• rpm -Uvh gcc-c++-4.*• rpm -Uvh glibc-2.*• rpm -Uvh glibc-common-2.*• rpm -Uvh ksh*
• rpm -Uvh libaio-0.*• rpm -Uvh libaio-devel-0.*• rpm -Uvh libgomp-4.*• rpm -Uvh libgcc-4.*• rpm -Uvh libstdc++-4.*• rpm -Uvh libstdc++-devel-4.*• rpm -Uvh make-3.*• rpm -Uvh sysstat-7.*• rpm -Uvh unixODBC-2.*• rpm -Uvh unixODBC-devel-2.*
Instalación BD Oracle en LinuxPaquetes requeridos para la instalación de Oracle Database 11g en Linux
59
Generalidades importantes
• Todos los paquetes de X ( producción y desarrollo )• Todos los paquetes de “C”• Todos los paquetes de compatibilidad ( Compat* )• Todos los paquetes de Java
• Ningún paquete de oficina• Ningún servidor de servicios ( Samba, FTP, DNS )
Instalación BD Oracle en Linux
60
oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536oracle soft stack 10240
Instalación BD Oracle en LinuxPaso 2Ahora debemos correr el siguiente comando para poder cambiar los parámetros del kernel: sysctl –p
Paso 3Agregamos las siguientes líneas al archivo “/etc/security/limits.conf”:
Ahora nos aseguramos que el SELINUX se encuentre deshabilitado, podemos verificarlo mediante el archivo “/etc/selinux/config”
SELinux=disable
61
groupadd oinstallgroupadd dbauseradd -g oinstall -G dba oraclepasswd oracle
Paso 4Creación de nuevos grupos y usuarios
Instalación BD Oracle en Linux
62
# Oracle SettingsTMP=/tmpTMPDIR=/tmpexport TMPDIR TMPORACLE_BASE=/opt/product/oracleexport ORACLE_BASEORACLE_HOME=$ORACLE_BASE/product/11.2.0export ORACLE_HOMEPATH=$ORACLE_HOME/bin:$PATHexport PATHLD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHexport LD_LIBRARY_PATHCLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlibexport CLASSPATH
Instalación BD Oracle en LinuxPaso 5Ingresar como usuario oracle y agregar las siguientes líneas al final del archivo “.bash_profile”:
63
Paso 6
Ejecutar xhost + ( Deshabilitar seguridad de ejecución en X sólo para root )
Paso 7
Ejecutar runinstaller con el usuario “oracle” para iniciar la instalación del software
Instalación BD Oracle en Linux
64
Instalación inteligente de Oracle Database en Oracle Enterprise Linux 5.x con
oracle-validated
Oracle Linux con oracle-validated
65
Des-monte el cdrom de su actual directorio y vuelva nuevamente a montarlo en el directorio /mnt/cdrom
– umount /dev/cdrom– mount /dev/cdrom /media/cdrom
Visualice la actual configuración de la herramienta YUM:– yum repolist
Podrá observar la siguiente información en su pantalla:
Loaded plugins: rhnplugin, security
This system is not registered with ULN.ULN support will be disabled.
ol5_u7_base_cdrom | 1.1 kB 00:00
ol5_u7_cluster_cdrom | 1.1 kB 00:00
repo id repo name status
ol5_u7_base_cdrom Oracle Linux 5 - U7 - i386 - base cdrom 2,471
ol5_u7_cluster_cdrom Oracle Linux 5 - U7 - i386 - cluster cdrom 16
repolist: 2,487
Instalación BD Oracle en Oracle Linux con oracle-validated
66
El paquete oracle-validated verifica y ajusta los parámetros del sistema basado en recomendaciones de valores para Oracle Linux, los archivos actualizados son:
/etc/sysctl.conf
/etc/security/limits.conf
/etc/modprobe.conf
/boot/grub/menu.lst
Este paquete modificará los parámetros requeridos a nivel del sistema y también instalará todos los paquetes requeridos para instalar el software de Oracle Databases.
Instalación BD Oracle en Oracle Linux con oracle-validated
67
El paquete oracle-validated, es un script que varia según la versión de la base de datos a ser instalada y facilita el proceso de instalación en un 90%.
Instalando el paquete de validación:
yum install oracle-validated
Se recomienda instalar también estos otros paquetes, para guardar compatibilidad:
yum install libXp-devel openmotif22 openmotif
También es deseable instalar el paquete Automatic Storage Manager (ASM) packages
yum install oracleasm-support oracleasm-2.6.18-274.el5
Yum es una herramienta que hace un cache de todos los archivos instalados en un repositorio. Es recomendable hacer una limpieza de este cache, para no consumir espacio innecesario.
La ruta del repositorio de Yum es: /var/cache/yum.
Para limpiar el cache: yum clean all
Instalación BD Oracle en Oracle Linux con oracle-validated
68
Revise las modificaciones realizadas pore el paquete oracle-validated
vi /etc/sysctl.conf
Opcionalmente para sistemas en producción, es recomendable configurar el SO para que pueda reiniciarse en caso de un error de pánico del kernel
# Enables system reboot in 60 seconds after kernel panic
kernel.panic = 60
Revise también que los siguientes archivos hallan siedo modificados por el oracle-validated.
/etc/security/limits.conf
/etc/pam.d/login
Instalación BD Oracle en Oracle Linux con oracle-validated
69
Modifique el contenido del archivo de perfil de los usuarios del sistema, con la siguiente información:
cat >> /etc/profile <<EOF
# Oracle settings for 11g
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF
Ejecute el siguiente comando para hacer que todos los cambios se hagan efectivos inmediatamente o procesada a reiniciar la máquina.
/sbin/sysctl -p
Instalación BD Oracle en Oracle Linux con oracle-validated
70
Deshabilite la seguridad de Linux editando el archivo /etc/selinux/config, verifique que la bandera SELINUX este configurada de la siguiente manera:
SELINUX=disabled
Deshabilite el servicio de firewall, si el mismo no ha sido inhabilitado a la hora de la instalación del S.O.
/etc/rc.d/init.d/iptables stop
chkconfig iptables off
Instalación BD Oracle en Oracle Linux con oracle-validated
71
De aquí en adelante, puedes continuar con la instalación de la base de datos, según los pasos establecidos en la metodología anterior, a partir del paso 4
Instalación BD Oracle en Oracle Linux con oracle-validated
72
Instalación BD Oracle 11gR2 en Oracle Linux 6.0 ?
oracle-validated en OL 6.x no existe
NEW !!!oracle-rdbms-server-11gR2-preinstall en
OL 6.x 64bit
73
Oracle Database 11g R2 with Oracle Linux 6 and the Unbreakable Enterprise Kernel has been announced, we are glad to announce the availability of oracle-rdbms-server-11gR2-preinstall, the Oracle RDBMS Server 11gR2 Pre-install RPM package (formerly known as oracle-validated). Designed specifically for Oracle Linux 6, this RPM aids in the installation of the Oracle Database.
When it is installed, the Oracle RDBMS Pre-install RPM does the following:• Automatically installs any additional packages needed for installing Oracle Grid
Infrastructure and Oracle Database 11gR2 (11.2.0.3).• Creates an oracle user, and creates the oraInventory (oinstall) and OSDBA
(dba) groups for that user. For security purposes, this user has no password by default and cannot login remotely. To enable remote login, please set a password using the "passwd" tool.
• Sets and verifies sysctl.conf settings, system startup parameters, user limits, and driver parameters to the minimum acceptable values based on recommendations from the Oracle Database Installation Guide and the Oracle Validated Configurations program.
x86_64: oracle-rdbms-server-11gR2-preinstall-1.0-3.el6.x86_64.rpm SRPMS: http://oss.oracle.com/ol6/SRPMS-updates/oracle-rdbms-server-11gR2-preinstall-1.0-3.el6.src.rpm
Instalación BD Oracle en Oracle Linux con oracle-validated