Este artículo describe los pasos para instalar Oracle Database 19c de 64 bits en Oracle Linux en Redhat 9 de 64 bits.
Partimos de que la versión de SSOO Redhat 9 ya ha sido instalada, puedes seguir este enlace donde se explica cómo hacerlo.
https://bdconraul.com/instalacion-red-hat/
1 . Descargar el software
Según del soporte que se disponga puedes descargar el sotware de oracle Database 19c desde OTN, edelivery o MOS.
E-Delivery:
https://edelivery.oracle.com/osdc/faces/Home.jspx
OTN:
https://www.oracle.com/es/database/technologies/oracle19c-linux-downloads.html
MOS
https://support.oracle.com/signin
En nuestro caso optamos por la opción OTN.
Nos descargamos el fichero que se ajusta a nuestra arquitectura, en nuestro caso Linux-x86_64 bits:
p37260974_190000_Linux-x86-64.zip
Cómo veremos después, si intentas instalar directamente Oracle 19.3 en versiones Linux 9, podrás caer en un bug, para ello es necesario aplicar un parche durante la instalación.
Por ello necesitamos también decargar, la última versión del Opath, que puedes descargar del siguuiente enlace.
1) Bajamos el OPatch de la siguiente dirección de Oracle.
https://updates.oracle.com/download/6880880.html
2) BUG FIX:
Existe un parche crucial y único para resolver errores que se producen durante la isntalaciones de Oracle 19c o Enterprise Manager (OEM) en Linux 9 (OL9) o en RHEL9, por tanto será necsario apilcar el siguiente parche (Patch 35775632):
Patch 35775632: PLACEHOLDER FOR STUBS.TAR PATCH FOR OL9 THAT FIXES BUG 33794281
Puedes descargarte el parche el a siguiente dirección:
https://support.oracle.com/
p35775632_190000_Linux-x86-64.zip
2.Preparación del entorno.
Puedes cambiar el nombre del hosts mediante comandos del sistema operativo con hostnamectl (recomendo) o puedes editar manualmente los ficheros «/etc/hosts» y «/etc/hostname«.
Para cambiar el nombre del host, ejecuta lo siguiente (cómo root).
hostnamectl set-hostname nuevo-host
3. Instalamos los prerequisitos de software.
Para instalar los prerequisitos necesarios para una instalación de una base de datos Oracle 19c, es muy aconsejable instalar el paquete oracle-database-preinstall-19c.
Este paquete de Linux instala automáticamente todos los requisitos necesarios de sofware (paquetes y dependencias), cambia y configura parámetros del sistema operativo, y crea usarios y grupos necesarios para poder instalar Oracle Dabase 19c / Oracle Grid infraestructure sin problemas.
En caso contrario, tendrás que cambiar/configurar todos los parámetros necesarios para la instalación de forma manual, con lo cual, la instalación de este paquete simplifica enormemente la instalación del software de Oracle.
Durante La instalación del software, indicamos un nombre de host y una ip fija.
Nuestra configuración es la siguiente.
Nombre del host: oracle19cdb1
ipfija del servidor: 192.168.1.137
Cómo nos encontramos con RHEL9, descargamos el RPM de la siguiente manera (con acceso a internet).
curl -o oracle-database-preinstall-19c-1.0-1.el9.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL9/appstream/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el9.x86_64.rpm
Instalamos el paquete recientemente descargado.

Antes de lanzar el instalador hay que tener en cuenta que el instalador de Oracle 19.3 no funciona correctamente en Linux 9. Si se lanza el instalador directamente tras bajar el software es muy probable que caigas en este Bug.

Este es el error que obtendrás si intnentas instalar la versión 19.3.
3- Preparación del entorno antes de lanzar el instalador.
En primer lugar antes de aplicar el parche actualizamos el fichero Opatch (unzip p6880880_230000_LINUX.zip), de la siguiente manera.
Nos dirijimos al $ORACLE_HOME de nuestra instalación, movemos el directorio Opatch a otro directorio con otro nombre, y descomprimimos el fichero p6880880_230000_LINUX.zip
cd $ORACLE_HOME
pwd
/home/oracle/software/dbhome19c
[oracle@oracle19cdb1 dbhome19c]$ mv OPatch/ OPatch_old
oracle@oracle19cdb1 dbhome19c]$ unzip p6880880_230000_LINUX.zip
Archive: p6880880_230000_LINUX.zip
creating: OPatch/
creating: OPatch/oracle_common/
creating: OPatch/oracle_common/modules/
inflating: OPatch/oracle_common/modules/com.oracle.glcm.common-logging_1.6.5.0.jar
inflating: OPatch/oracle_common/modules/common-logging-config.jar
inflating: OPatch/opatch_env.sh
Aplicar parche 35775632.
Para descargar el parche: Get Patch 35775632 (p35775632_190000_Linux-x86-64.zip) from My Oracle Support (MOS).
1 - Extraemos el parche descargado anteriormente.
unzip p35775632_190000_Linux-x86-64.zip
2 - Tras extraer el .zip, aparecerá un fichero "stubs.tar".
Localiza este fichero y copíalo a tú $ORACLE_HOME/lib/stubs
cp /home/oracle/software/35775632/stubs.tar $ORACLE_HOME/lib/stubs
3- Descomprime el fichero .tar que has copiado.
cd $ORACLE_HOME/lib/stubs
tar -xf stubs.tar
4. Instalación del software de base de datos 19c.
Antes de comenzar la isntalación vamos a crear los directorios donde se realizará la Instalación. Además crearemos también un fichero de variables de entorno para no tener que ejecutar manualmente dichas variables cada vez que queramos acceder a nuestra base de datos.
mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
Descomprimimos el archivo LINUX.X64_193000_db_home.zip.
pwd
/home/oracle/software/dbhome19c
[oracle@oracle19cdb1 dbhome19c]$ unzip LINUX.X64_193000_db_home.zip
Ejemplo de fichero con varibales de entorno test.env (adecuar variables al entorno donde se está lanzando)
cat test.env
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_HOSTNAME=oracle19cdb1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export ORA_INVENTORY=/u01/app/oraInventory
export ORACLE_SID=test
export PDB_NAME=testpdb1
export DATA_DIR=/oradata
export PATH=/usr/sbin:/usr/local/bin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
Una vez aplicado el parche ya podrás lanzar el instalador.
Ejecutamos el instalador con ./runInstaller
oracle@oracle19cdb1 ~]$ . ./test.env
export CV_ASSUME_DISTID=OEL7.8
pwd
/home/oracle/software/dbhome19c
oracle@oracle19cdb1 dbhome19c]$ ./runInstaller
Para que no aparezca el siguiente error.

[INS-08101] Unexpected error while executing the action at state: ‘supportedOSCheck’
Añade la siguiente variable de entorno (CV_ASSUME_DISTID=OEL7.8) anes de ejecutar el instalador.
export CV_ASSUME_DISTID=OEL7.8
oracle@oracle19cdb1 dbhome19c]$ ./runInstaller
Ejecución del instalador.

Aparecen dos opciones, instalar software y crear una base de datos o únicamente instalar sólo software.
Vamos a elegir la opción una, creando una base de datos de test.
Aparecen dos opciones.
La opción Escritorio es una instalación más simple, para bases de datos de desarrollo con configuración mínima para probar, aprender, etc. Con menos recuros más ideal para PCs, portátiles, etc. La sgunda opción (clase Servidor) es ideal para entornos productivos y servidores, donde se busca mayor escabilidad y rendimiento, los recursos por tanto son mayores.

Puedes elegir la opción que más se ajuste a tus necesidades, en nuestro caso elegiremos la segunda opción, ya que será necesaria para la realización de post posteriores.
En esta panatalla, elegiremos el directorio donde se instalará el sotware de base de datos.

En esta pantalla indicaremos donde se encontrará el inventario de nuestro software.

Elegimos el tipo de base de datos que vamos a crear.

Especificamos los datos de nuestra base de datos, a la que llamaremos test. Esta base de datos será creada cómo arquitectura multitenant, por lo que elegiremos la opción «Crear como base de datos contenedor», y crearemos un nuevo contenedor, en nuestro caso «testpdb1».

Especificamos las características que tendrá nuestra base de datos.
Memoria, juego de caracteres, etc.

Elelgimos donde se almacenarán nuestros ficheros de base de datos. Son los ficheros físicos donde se almacenará nuestra base de datos.
En nuestro caso se almacenarán en un file system aparte del espacio donde se instalará el software de base de datos (recomendado).

Activa o desactivar flash_recovery_area. Activa /desactiva esta opción, que permite centralizar automáticamente y así simplificar y acelear las tares de copias de sguridad y recuperación ante desastres.

INciamos las password de los usaurios administradores.

Especifica usuarios y grupos del sistema operativo, según requerimientos de vuestro sistema (dba,oper,oinstall, etc).

Ejecución de script con credenciales root.
Para que la instalación sea correcta, el instalador debe de realizar alguna acción sobre nuestro sistema con el usuario root. Puedes indicar al instalador que lo ejecute de forma automática (se requieren credenciales) o ejecutarlo de forma manual una vez la instalación haya finalizado.

Aparecerá el resumen de nuestra instalación, revisaremos que todo está correcto y comenzaremos la isntalación.

Finalmente aparecerá un mensaje indicando que la isntalación se ha realizado correctamente.

5. Conectarnos a la base de datos.
La forma de conectarnos a nuestra pdb recien creada de forma directa mediate sqlplus es la siguiente.
sqlplus usuario/password@host:puerto/nombrepdb
oracle@oracle19cdb1 ~]$ sqlplus system/oracleconraul@oracle19cdb1:1521/testpdb1
SQL*Plus: Release 19.0.0.0.0 - Production on Tue Dec 16 01:48:56 2025
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
Lo habitual no es conectarte directamente a la base de datos, sino crear un tnsnames.ora y conecarte con algún entorno de desarrollo, lo más habitual sqldeveloper.
Ejemplo fichero tnsnames.ora
[oracle@oracle19cdb1 ~]$ . oraenv
ORACLE_SID = [test] ? test
The Oracle base remains unchanged with value /home/oracle/software
[oracle@oracle19cdb1 ~]$ cd $TNS_ADMIN
[oracle@oracle19cdb1 admin]$ cat tnsnames.ora
testpdb1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = oracle19cdb1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = testpdb1)
)
)

Elegimos un nombre de conexión, tipo de conexión TNS y buscamos el nombre del alias de nuestro tnsnames.ora. Proporcionamos usuario/password.y ya podremos conectarnos.
