DEV Community

Cover image for Oracle XE con Vagrant
Jean C. Omobono Z.
Jean C. Omobono Z.

Posted on

Oracle XE con Vagrant

Usar una VM en lugar de tu equipo

He visto muchos blogs en español en los que explican cómo realizar la instalación de Oracle XE 18c en diversos sistemas operativos y todos ellos asumen que la instalación se realizará directamente sobre tu equipo de trabajo. Aunque esto no está mal, mi experiencia me ha enseñado que no es una buena idea instalar XE directamente en el sistema operativo de tu computador principal: las configuraciones del equipo pueden cambiar a medida que vas instalando nuevas aplicaciones y/o servicios, haciendo que tu instalación de XE se pueda volver inestable (o de hecho todo tu sistema operativo, sobre todo en las instalaciones en Windows).

El proceso que voy a explicarles es muy similar a usar virtualenv en Python para crear ambientes virtuales para las librerías que utilizarás en tus aplicaciones, o a la creación de contenedores con Docker para crear máquinas de desarrollo completas. De esta forma tienen un ambiente dedicado exclusivamente al servicio con el que desean trabajar.

Vagrant para aliviar el proceso

No es necesario reinventar la rueda. Por lo general los tutoriales en español nos guían por el proceso completo de configuración del sistema operativo donde instalaremos la base de datos, incluyendo la instalación de paquetes, apertura de puertos, etc. Sin embargo ya Oracle ha publicado scripts que pueden aliviar la tarea.

Vagrant es una herramienta para construir y administrar máquinas virtuales. Básicamente nos permite utilizar scripts con una configuración predefinida para la creación de una máquina virtual. La ventaja principal es que es posible usar estos scripts para crear tantas máquinas virtuales como necesites y todas ellas tendrán la misma configuración.

En este procedimiento utilizaremos VirtualBox para administrar la máquina virtual de Oracle XE, si aun no tienen instalado VirtualBox pueden seguir las instrucciones de instalación para su sistema operativo. Además, también debe instalar Vagrant siguiendo estas instrucciones.

Iniciar la instalación

Una vez que VirtualBox y Vagrant están instalados procederemos a descargar los scripts de Oracle que se encuentran en este repositorio en GitHub. Pueden clonarlo o descargarlo totalmente y luego descomprimir el archivo en un directorio local de su preferencia.

En este ejemplo usaré un equipo con Ubuntu 20.04 como anfitrión, aunque las instrucciones son las mismas para cualquier sistema operativo.

Directorio vagrant-projects

En mi caso hice una clonación del repositorio, en la imagen anterior se ve el contenido del directorio.

Antes de iniciar la creación de la máquina virtual, es importante hacer notar que si es la primera vez que estamos ejecutando Vagrant en nuestro equipo es recomendable tener una buena conexión a internet, ya que el script descargará tanto la imagen del sistema operativo (Oracle Linux 7) y el instalador de la base de datos XE.

Para iniciar la creación de la máquina virtual de Oracle XE 18c procederemos al directorio vagrant-projects/OracleDatabase/18.4.0-XE y ejecutaremos el comando vagrant up.

Inicio con vagrant up

El proceso de instalación se encargará de:

  • Descargar e instalar el sistema operativo (Oracle Linux 7)
  • Descargar e instalar las dependencias necesarias para la instalación de Oracle XE 18c.
  • Descargar e instalar Oracle XE 18c.
  • Configurar el redireccionamiento IP necesario para poder comunicarse con la VM desde el equipo anfitrión.

El proceso de instalación puede tomar varios minutos dependiendo del ancho de banda de su conexión y/o de la potencia de su equipo; en la consola verán el progreso de la misma.

Proceso de instalación 1

Procesao de instalación 2

Al finalizar el proceso tomen nota del usuario y contraseña de los usuarios sys, system y pdbadmin que aparecerán en la consola. (Si no pudieron tomar nota tampoco hay que entrar en pánico, es muy sencillo cambiar estas contraseñas y lo explicaré un poco más abajo)

¡Y eso es todo! Ya tienen una base de datos Oracle XE 18c funcional en su equipo. Para configurar un cliente como SQL Developer utilicen los siguientes datos:

  • Hostname: localhost
  • Port: 1521
  • SID: XE
  • PDB: XEPDB1
  • Usen las contraseñas generadas automáticamente

Configuración SQL Developer

Si prefieren cambiar la contraseña pueden ingresar a la máquina usando el comando vagrant ssh estando en el mismo directorio desde el que ejecutaron vagrant up.

Ingresando al VM con vagrant ssh

Una vez hayan ingresado a la máquina virtual ejecuten estos comandos:

sudo su - oracle

/home/oracle/setPassword.sh <nuevoPassword>

Donde <nuevoPassword> es la nueva contraseña que quieren utilizar. Recuerden que es posible que la base de datos exija que la contraseña cumpla con ciertos parámetros de complejidad.

Top comments (0)