- Se incorporó
- 27 Octubre 2010
- Mensajes
- 19.323
View the Post on the BlogAhora vamos con la instalación de Oracle Linux 12c, la última versión de este software de base de datos relacional, sobre Oracle Linux 7, el cuál también es la última versión de dicho sistema operativo. Cabe destacar que el proceso de instalación que llevaremos a cabo es equivalente también para RedHat 7 y CentOS 7.
Para realizar la instalación necesitan:
Archivos de instalación de Oracle 12c
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index-092322.html
Seleccionen la versión para Linux x86-64.
Una imagen de Oracle Linux 7
https://edelivery.oracle.com/linux
Para descargar todo eso necesitarán tener una cuenta en oracle.com. Crear la cuenta es gratis, vayan tranquilos.
Un servidor (o máquina virtual) con los siguientes requisitos
Por lo menos 2GB de RAM (yo utilizaré una máquina virtual de 4GB de RAM).
Por lo menos 10GB de espacio en disco limpios para la instalación de oracle (yo utilizaré una máquina virtual con 30GB de espacio en disco).
Un procesador de arquitectura x86-64 (yo utilizaré una máquina virtual con 2 cores de arquitectura x86-64).
Pueden tomar estas especificaciones como base.
http://docs.oracle.com/database/121/LADBI/pre_install.htm#LADBI7497
https://www.redhat.com/en/files/resources/en-rhel-deploy-oracle-rac-database-12c-rhel-7.pdf
Comencemos con la instalación.
Como lo he comentado en otras guías, yo siempre prefiero instalar las versions en inglés porque es más fácil buscar coincidencias en internet de los mensajes de error que nos puedan salir en algún momento.
En la configuración de la fecha (Date/Time), elijan la zona horaria que corresponda. Yo selecciono America/Santiago (no se preocupen, luego instalamos el tzdata actualizado).
En la configuración Keyboard, seleccionen su configuración de teclado. Yo selecciono Español, que es el teclado de mi notebook en donde reside la máquina virtual.
Configuren la red con una ip fija y también denle un nombre al host. Mi comité creativo no estaba disponible, así que simplemente llamé a este servidororacle12c.
En Installation Destination deben seleccionar el tamaño de la swap. El requerimiento de Oracle dice que si la memoria RAM de tu servidor es de 2 a 16 GB, la swap debe ser del mismo tamaño de la memoria RAM. Si la memoria RAM es mayor a 16GB, entonces la swap debe ser de 16GB. Como mi máquina virtual tiene 4GB de ram, la swap será de 4GB.
En Software Selection, elijan la opción Server with GUI, ya que se necesita entorno gráfico para hacer una instalación práctica de la base de datos Oracle.
Una vez seleccionado todo eso, presionen el botón Begin Installation.
Mientras se ejecuta el proceso de instalación, configuren la contraseña de la cuenta root.
Cuando termine, presionen el botón de Reboot.
Una vez reiniciado el sistema, Oracle Linux pedirá aceptar las condiciones de Licenciamiento. Entren al menú de licenciamiento, acepten las condiciones, presionen el botón Done y un vez de vuelta en la pantalla inicial presionen el botón Finish Configuration.
La pantalla siguiente consultará por una suscripción a la red de Oracle Linux. En mi caso selecciono No, para más adelante realizar la configuración manual a los repositorios públicos.
La pantalla siguiente pedirá validación de idioma. Una vez resuelto eso, solicitará la creación de una cuenta de sistema operativo. Yo aprovecharé para crear la cuenta oracle, necesaria para realizar la instalación del software de base de datos.
Luego seleccionen una ubicación geográfica. En mi caso elijo Santiago.
Luego solicita una cuenta de conexión a la nube. Simplemente ignórenlo y presionen Next.
Finalmente presionen el botón para comenzar a utilizar el sistema.
Una vez que reinicie el sistema, accedan a él vía ssh utilizando su cliente ssh favorito con la cuenta root. Yo usaré putty, el amigo de todos.
Asegúrense de que la tabla de host tiene asociada la IP del servidor con el nombre de host. Si no está, agréguenla.
Code:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.0.50 oracle12c
Luego, configuren yum en el servidor con los repositorios oficiales del sistema operativo. En mi caso estoy trabajando con Oracle Linux 7, así que configuraré yum contra los repositorios públicos oficiales de Oracle.
https://docs.oracle.com/cd/E52668_01/E54669/html/ol7-downloading-yum-repo.html
Si están utilizando RedHat 7, usen tranquilamente los repos de RedHat Network. Con CentOS 7 pues lo mismo, apunten a los repos de CentOS 7.
Una vez configurados los repositorios para yum, podemos instalar los paquetes requeridos por la base de datos. En Oracle Linux se simplifica todo este procedimiento simplemente instalando el paquete oracle-rdbms-server-12cR1-preinstall. Al instalar con yum este paquete, yum se encarga de bajar desde el repositorio todos los paquetes requeridos por Oracle para el correcto funcionamiento de la base de datos, además de realizar algunas configuraciones del sistema operativo.
Code:
yum install oracle-rdbms-server-12cR1-preinstall -y
Más información
http://www.oracle.com/technetwork/articles/servers-storage-admin/ginnydbinstallonlinux-488779.html
Sin embargo, para hacer esta guía útil también para quienes utilizan RedHat o CentOS, iremos por el camino manual. Comenzamos instalando los paquetes uno por uno en una simple instrucción de yum.
Code:
yum install binutils compat-libcap1 gcc gcc-c++ glibc.i686 glibc glibc-devel.i686 glibc-devel ksh libaio.i686 libaio libaio-devel.i686 libaio-devel libgcc.i686 libgcc libstdc++.i686 libstdc++ libstdc++-devel.i686 libstdc++-devel libXi.i686 libXi libXtst.i686 libXtst make sysstat compat-libstdc++-33
Una vez terminado, realizamos una actualización general del sistema. Esto no es obligatorio, pero si es una muy buena práctica: comenzar a instalar con el sistema actualizado.
Code:
yum update
y una vez que finalice la actualización de los paquetes de todo el sistema, reiniciamos para proseguir la configuración sobre un entorno actualizado.
Code:
reboot
Ya reiniciado el servidor, accedan a él vía ssh con la cuenta root. Editen el archivo /etc/sysctl.conf , agregando o modificando valores según corresponda. Ennegrita el comentario de los valores. Si no tiene comentario configúrenlo así como se ve. Son parámetros mínimos recomendados por Oracle.
Code:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 419430 40% de la memoria física del servidor en pages. Como mi servidor tiene 4GB de ram y el valor de pages es 4096, lo configuraré con 1,6 GB / 4096
kernel.shmmax = 2147483648 La mitad de la memoria física en bytes. Como mi servidor tiene 4GB de ram, lo configuraré con 2GB
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 = 1048576
Ahora creen el siguiente archivo
Code:
vi /etc/security/limits.d/99-oracle-limits.conf
y escriban los siguientes valores que serán de uso de la cuenta se sistema operativo oracle.
Code:
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
Creen los grupos de sistema operativo dba y oinstall.
Code:
groupadd oinstall
groupadd dba
Y ahora asocien los grupos dba y oinstall a la cuenta de usuario oracle creada inicialmente.
Code:
usermod -G dba -g oinstall oracle
Pueden dejar el sistema sin seguridad, deshabilitando el firewall y selinux, o configurar la seguridad para que permita las conexiones.
Opción sin seguridad
Deshabiliten el servicio de firewall.
Code:
systemctl stop firewalld
systemctl disable firewalld
Deshabiliten selinux.
Code:
vi /etc/selinux/config
Y el parámetro SELINUX déjenlo en disabled.
Code:
SELINUX=disabled
Opción con seguridad
Permitan que el firewall de Linux acepte conexiones al puerto 1521 (es el puerto de escucha por defecto de Oracle).
Code:
systemctl start firewalld
firewall-cmd --permanent --zone=public --add-port=1521/tcp
firewall-cmd --reload
Modifiquen selinux.
Code:
vi /etc/selinux/config
Y el parámetro SELINUX déjenlo en permissive.
Code:
SELINUX=permissive
Ahora vamos a crear los directorios de instalación y de almacenamiento.
En estricto rigor, pueden instalar y mantener los archivos de datos (datafiles) donde ustedes quieran. Pero por orden se estila dejar todo en directorios nombrados /u01, /u02, /u03... /u0n , básicamente porque además puedes atachar un storage y mapearlo en esas rutas de forma ordenada.
Procedemos a crear entonces los directorios /u01 y /u02 para almacenar la instalación y los archivos de datos, respectivamente, y crear los subdirectorios respectivos. No olviden de darle permiso a la cuenta oracle.
Code:
mkdir /u01
mkdir /u02
mkdir -p /u01/app/oracle/product/12.1.0.2/db_1
mkdir -p /u02/capadb/datafiles
chown -R oracleinstall /u01
chown -R oracleinstall /u02
Si se fijan, creé un directorio llamado capadb. Ese será el nombre que le pondré a la base de datos y por razones de orden así llamé al directorio.
Conéctense por ssh con la cuenta oracle, editen el archivo .bash_profile y agreguen lo siguiente al final
Code:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.1.0.2/db_1
export ORACLE_SID=capadb
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
En dónde ORACLE_SID será el nombre de la base de datos.
Ahora es el momento de copiar los archivos de instalación. Conéctense al servidor con alguna aplicación que permita transferencia vía scp, con la cuenta de sistema operativo oracle. Yo utilizo winscp.
Una vez que se conecten, copien los archivos de instalación de Oracle al directorio /u01.
Conéctense por entorno gráfico al servidor con la cuenta oracle, abran un terminal y diríjanse al directorio /u01. Descompriman los archivos de instalación con la instrucción unzip.
Code:
unzip linuxamd64_12102_database_1of2.zip
unzip linuxamd64_12102_database_2of2.zip
La descompresión de los dos archivos generará un directorio llamado database. Ingresen ahí y ejecuten el archivo ejecutable runInstaller.
Code:
./runInstaller
Se desplegará una interfaz gráfica del instalador.
En la primera ventana desctiven la caja de texto para las actualizaciones. Cuando les aparezca una ventana de advertencia, presionen Yes.
En la ventana siguiente seleccionen Crear y configurar una base de datos.
En la ventana siguiente seleccionen Server Class.
En la ventana siguiente seleccionen Single Instance database installation.
En la ventana siguiente seleccionen Typical Install.
En la ventana siguiente pongan mucho ojo con las opciones:
- El directorio de instalación deberá ser el mismo que configuraron ustedes previamente. ¿Y cómo lo sabe el instalador? Pues porque se definió la variable $ORACLE_HOME en el .bash_profile.
- En directorio de database file location debe ser aquel que ustedes hayan definido para almacenar los archivos de datos de la base de datos. Estos archivos serán SU base de datos, y si la base de datos crece, este filesystem crecerá.
- En global database name es capadb. Obviamente ustedes pueden crear el nombre que quieran.
- Definan contraseña de administración.
En la ventana siguiente se definirá la ubicación del inventarior. Dejen la que ofrece el instalador por defecto.
En la ventana siguiente se revisaran los requisitos de software para la instalación. Si todo está en orden se desplegará una pantalla mostrando el resumen de lo que se va a instalar. Presionen Install para comenzar.
Antes de concluir la instalación, Oracle solicitará que ejecuten un par de scripts con la cuenta root. Ejecútenlos desde un terminal y presionen el botón OK cuando finalicen, para dar paso a la etapa siguiente que es crear la base de datos.
Luego de que se ejecuten los scripts y se presione el botón OK, comenzará la creación de la base de datos propiamente tal.
Al finalizar se desplegará la siguiente pantalla
La pantalla tiene información resumen. Si se fijan bien, además de las rutas de instalación y el nombre de la base de datos, vemos también una URL. Esa URL corresponde a la interface de administración web de la base de datos.
La base de datos como tal ya está instalada y operativa. Ahora resta instalar el servicio que escucha las peticiones de los clientes externos, el listener.
Siempre en el entorno gráfico, con la cuenta oracle, ejecuten el comanto netca.
Si las variables de entorno están correctas se desplegará una ventana gráfica, similar a la de la instalación de la base de datos.
Seleccionen la primera opción, Listner Configuration, y presionen el botón Next.
En la ventana siguiente seleccionen la opción Add para agregar un nuevo servicio.
La opción siguiente requerirá ingresar un nombre al Listener. Yo dejo el nombre por defecto: LISTENER.
La siguiente ventana permite seleccionar los protocolos a utilizar por el servicio. Prefieran la opción por defecto que es únicamente TCP.
La ventana siguiente es para configurar el puerto. El puerto por defecto es 1521 (de hecho es el puerto que utilizamos más arriba para dejar abierto el puerto del firewall). Algunas organizaciones por motivos de seguridad tienen normas que obligan a no utilizar los puertos por defecto de los diferentes softwares, servicios y aplicaciones. Si este es tu caso pues debes cabiar el puerto y elegir otro. Para la guía prefieran la opción por defecto que es 1521.
Esa fue la última ventana de configuración. Luego sigan las instrucciones (no agregar otro cambio y cerrar la ventana). Cuando se cierre la ventana se iniciará el servicio listener.
Subir base de datos
Esta es una instalación bastante sencilla y como tal no levanta automáticamente. Sin embargo, el procedimiento es bastante sencillo
Conectado vía ssh con la cuenta oracle, ejecuten las siguiente instrucciones para levantar la base de datos
Code:
[oracle@oracle12c ~]$ sqlplus / as sysdba
SQL*Plus: Release 12.1.0.2.0 Production on Mon Aug 24 22:59:17 2015
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 1660944384 bytes
Fixed Size 2925072 bytes
Variable Size 989859312 bytes
Database Buffers 654311424 bytes
Redo Buffers 13848576 bytes
Database mounted.
Database opened.
SQL> exit
[oracle@oracle12c ~]$
y ahora, siempre conectados con la cuenta oracle, ejecutarán la instrucción para levantar el servicio listener para escuchar peticiones.
Code:
[oracle@oracle12c ~]$ lsnrctl start
Bajar base de datos
Antes de apagar el servidor ejecuten lo siguiente
Code:
[oracle@oracle12c ~]$ lsnrctl stop
y para bajar el servicio de base de datos
Code:
[oracle@oracle12c ~]$ sqlplus / as sysdba
SQL*Plus: Release 12.1.0.2.0 Production on Mon Aug 24 23:10:34 2015
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
[oracle@oracle12c ~]$
Luego, para conectarse a la base de datos desde un equipo remoto, debes proporcionar lo siguiente:
Una cuenta de usuario y su respectiva contraseña.
El hostname o la ip del servidor de base de datos.
El puerto, que si utilizaron el valor por defecto será 1521.
Y el nombre del servicio, que en la mayoría de los casos será el nombre de la base de datos, que en este caso es capadb.
Y eso es todo amigos. Tenemos una instalación sencilla de base de datos Oracle 12c sobre Oracle Linux 7 para que los que se interesen comiencen a dar sus primeros pasos.
Última modificación: