19 de octubre de 2020

Instalación Oracle Database 19c en Linux 8

 Buenas tardes, tuve la oportunidad de instalar una DB 19c en un Linux 8. 

Por suerte me encontre con pocos bugs o temas a tomar en cuenta que me gustaría compartir junto con el paso a paso para la instalación.

Organicemos el post:

1. Descarga de Software

2. Instalación de prereq.

3. Bug a tomar en cunta.

4. Instalación de software

5. Creación de la DB.

Nota: Asumimos que ya está creado el usuario oracle en el SO con los grupos correspondientes y FS para la DB.

1. Descarga de Software:

La versión 19c no trae un instalador común, sino que vamos a descargar el home de la DB y de ahi se va a realizar la instalación.

https://www.oracle.com/database/technologies/oracle-database-software-downloads.html


En esta instancia siempre recomiendo realizar instalaciones, upgrade, etc.. cualquier proceso prolongado por medio de un vnc u otra herramienta que si pierden conexión no falle el proceso.

Pueden seguir el siguiente post para ver como realizarlo:

http://cristianpeque.blogspot.com/2020/09/como-crear-una-conexion-vnc-una.html

Logueados como Oracle, preparamos el FS para descomprimir el software:

[root@]# groupadd -g 1010 oinstall

[root@]# groupadd -g 1011 dba
[root@]# useradd -u 1006 -g 1010 -G 1011 -d /home/oracle -s /bin/bash oracle
# mkdir -p /u01/app/oracle
# mkdir -p /u01/app/oraInventory
# chown -R oracle:oinstall /u01/app/oracle
# chown -R oracle:oinstall /u01/app/oraInventory
# chmod -R 775 /u01/app
$ mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
$ cd /u01/app/oracle/product/19.0.0/dbhome_1
$ unzip -q /tmp/db_home.zip

2. Prereq, como root ejecutamos (no muestra todo el output, ya que es muy extenso):

 # yum install oracle-database-preinstall-19c

Transaction Summary

=========================================================================

Install  10 Packages

Total download size: 3.3 M

Installed size: 15 M

Is this ok [y/N]: y  



3. Bugs

Bug1 (el instalador no reconoce el Sistema Operativo Linux 8)



1. Since 19c(19.3) is already released a while ago,It does not contain Pre-req checks specific to OL /RHEL 8.

Installer will fail with below Error,as there are no Pre-req checks specific to OL / RHEL 8-
[WARNING] [INS-08101] Unexpected error while executing the action at state:'supportedOSCheck'
CAUSE: No additional information available.
ACTION: Contact Oracle Support Services or refer to the software manual.

SUMMARY:
- java.lang.NullPointerException

Hence,there is a need to direct the Installer to assume the installed OS to be OL 7 & perform related checks.

Therefore,the below Variable needs to be set,prior to launching Installer-
$ export CV_ASSUME_DISTID=OL7

Setear la variable antes de ejecutar el instalador.

Bug2 29772579 (la validación de prereq, muestra que falta un paquete de SO)

compat-libcap1-1.10 package missing error during single-instance Oracle Database and Oracle Database Client installations on Oracle Linux 8 and Red Hat Enterprise Linux 8.

Workaround:

In the Perform Prerequisite Checks screen, for the compat-libcap1-1.10 missing check, select Ignore All, and click Install to continue with the installation.

(se puede ignorar, ya que es paquete no viene más para linux 8, pero el instalador de Oracle no esta actualizado por el momento.)


4. Instalación de Software

$ cd /u01/app/oracle/product/19.0.0/dbhome_1

$ ./runInstaller
Pantallas:

Vamos a Instalar el Software nada mas para luego crear la DB con dbca.




Como veran la instalación no varia mucho de las versiones anteriores por el momento.





Tildamos el checkbox "IGNORE ALL" y click en next

Bug 29772579, ese paquete hay que ignorarlo, ya que no viene para Linux 8 y no es necesario.
Referencia:
https://docs.oracle.com/en/database/oracle/oracle-database/19/rnrdm/linux-platform-issues.html#GUID-254C296D-F61D-49FC-827C-0F5CB8528C56


click en Yes.


Resumen de instalación y click en Install para continuar.


Vamos a ver el progreso y al terminar nos va a pedir ejecutar los famosos script de root para actualizar y crear el inventario del SO.


[root@]# /u01/app/oraInventory/orainstRoot.sh

Changing permissions of /u01/app/oraInventory.

Adding read,write permissions for group.

Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.

The execution of the script is complete.

 

[root@]# /u01/app/oracle/product/19.0.0/dbhome_1/root.sh

Performing root user operation.

The following environment variables are set as:

    ORACLE_OWNER= oracle

    ORACLE_HOME=  /u01/app/oracle/product/19.0.0/dbhome_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 script.

Now product-specific root actions will be performed.

Oracle Trace File Analyzer (TFA - Standalone Mode) is available at :

    /u01/app/oracle/product/19.0.0/dbhome_1/bin/tfactl

Note :

1. tfactl will use TFA Service if that service is running and user has been granted access

2. tfactl will configure TFA Standalone Mode only if user has no access to TFA Service or TFA is not installed


5. Creación de la DB


Setear variables y ejecución del dbca.

$ export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1

$ cd $ORACLE_HOME/bin

$ ./dbca

Tildamos crear a database y click en Next



Esta pantalla nos da la opción de crear una base de datos estandar con una configuración típica o seleccionar y elegir cada uno de los componentes.
En nuestro caso vamos a seleccionar "Advanced configuration" para ver todas las opciones que tenemos.


Tipo de base de datos, ya que no vamos a instalar HA (alta Diponibilidad) vamos a seleccionar Single Instancias para propositos generales.


En esta pantalla nos pide distintos campos que tenemos que completar con información que ya deberiamos disponer.
Global database name, SID
Al final nos da la opción de crear una PDB y un container, el cual es lo más recomandado.

NOTA: En caso de necesitar más de una pdb, con el wizar solo permite hasta un máximo de 2, sino da error.

Creamos la PDB con el nombre de referencia y click en Next



Selecionamos el tipo de storage, file Location

Y nos da la opción de utilizar OMF, lo cual lo recomiendo ya que es mucho más facil en el día a día la creación de TBS, etc.
https://docs.oracle.com/database/121/ADMIN/omf.htm#ADMIN003



Depende el caso si van a utilizar FRA o ARchive, se puede configurar en esta pantalla, luego click en Next



Recomendaciones de seguridad, creen el listener con un nombre de referencia y en un puerto que no sea el habitual 1521.



Esta pantalla nos permite configurar ODV y OLS. Tomen en cuenta que son productos que necesitan licencias.

Las suguientes pantallas son para configurar el sizing de la db y como se estimo.

Importante conocer el Character Set que necesita la aplicación, ya que puede traer problemas si se crea con uno incompatible.


Estos son los esquemas de ejemplo, nunca selecionarlos para una DB productiva.


Si lo desean pueden configurar EM Express que no tiene un costo adisional o registarla en un EM en Cloud.

Realmente es mucho más cómodo configurar la misma pass para todos los esquemas y luego el área de Seguridad se encargará del blanqueo de las mismas o pre salida a produción el DBa.


Ya llegando al final, en esta pantalla nos da la opción de cambiar algún parámetro de la base de datos particular que se específico de la aplicación que la consuma.

Resumen de instalación y si esta todo OK, click en Finish!


Siempre recomiendo abrir una terminal y tener un tail activo al log, para ir viendo todo el proceso.


Fin de la creación, nos brinda toda la información necesaria!


Validen la correcta creación del container y la PDB

[oracle@]$ export ORACLE_SID=cepasdb

[oracle@]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Fri Oct 9 22:20:20 2020

Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0

SQL> COLUMN NAME FORMAT A8

SELECT NAME, CON_ID, DBID, CON_UID, GUID FROM V$CONTAINERS ORDER BY CON_ID;SQL> SQL>

NAME         CON_ID       DBID    CON_UID GUID

-------- ---------- ---------- ---------- --------------------------------

CDB$ROOT          1  368767792          1 86B637B62FDF7A65E053F706E80A27CA

PDB$SEED          2 3552451302 3552451302 B14770FA51C7FFB8E0530942FE0AEB66

PDBNAME           3 2627885792 2627885792 B14794FA1D020D2BE0530942FE0A9457



Espero que les sirva como guía, cada instalación es un mundo diferente. Pero siempre es bueno
ver un paso a paso con imagenes, para quedarnos tranquilos.

Saludos!
Cristian

Referencias:
Requirements for Installing Oracle Database 19c on OL8 or RHEL8 64-bit (x86-64)
(Doc ID 2668780.1)





































No hay comentarios.:

Publicar un comentario