Instalar Oracle XE 10g en Ubuntu y Linux Mint


Oracle es una conocida empresa de Software, pero también da nombre al mejor (¿único?) Sistema de Gestión de Bases de Datos del mercado, creado por la misma empresa. En este post, voy a explicar paso a paso como instalar Oracle en Ubuntu 12.04, 12.10, 13.04 y Linux Mint 13 y 14. Si eres alumno de la UCA y estas en 2º de Ingeniería Informática o simplemente te interesa saber como instalarlo, sigue leyendo.


Primero voy a explicar un par de cosas. La razón de que nombre arriba a los alumnos de 2º curso del Grado en Ingeniería Informática es que Oracle es el Software que se utilizará en las prácticas de la asignatura Bases de Datos. Es por esta razón por la que hago este post, ya que al ser alumno de esta asignatura, me veo obligado a instalar el software de Oracle.

En cuanto a la razón de instalar Oracle 10g, es la versión que vamos a utilizar. Sé que la versión actual de Oracle es la 11g RS2 (release 2), pero en este caso voy a explicar cómo instalar la versión 10g, en concreto, la Express Edition (XE) Universal. En caso de que alguien quiera instalar la versión 11g, los pasos deberían ser similares (no lo he probado, y como bien digo aquí, no voy a explicar algo que no haya probado). Esta guía puede servir para instalar Oracle XE 10g en Ubuntu 12.04, 12.10, 13.04, y en Linux Mint 13 y 14 (al menos, que yo haya probado/ me hayan confirmado). Con todo ya claro, vamos a la instalación de Oracle 10g XE en Ubuntu 12.04.

Personalmente, recomiendo instalar Oracle dentro de una máquina virtual, así no nos quitará espacio del disco duro, y una vez no lo necesites, solo tendrás que borrar la máquina virtual.

Para comenzar, hay que descargar Oracle. En la página de descargas de Oracle no encontraremos la versión 10g, sino la 11g. Para descargar Oracle 10g, puedes utilizar este enlace, que lleva a los repositorios de Oracle de Debian; o este otro el cual conduce al paquete DEB hospedado en MEGA, por si el anterior no funcionase.

En este caso, yo he instalado Oracle en Ubuntu 12.04 de 64 bits, pero la guía de instalación es compatible con ambos sistemas, de 32 y 64 bits, ya que el paquete de Oracle es de 32 bits.

Primero, vamos a instalar algunas dependencias, todas ellas de 32 bits, en un sistema de 64 bits:

sudo apt-get install libc6-i386 libaio1:i386 bc

En caso de que tu sistema sea de 32 bits:

sudo apt-get install libc6 libaio1:i386 bc
Con Oracle ya descargado, y esos paquetes instalados, podemos seguir con la instalación de Oracle:

cd ~/Descargas
sudo dpkg -i oracle-xe-universal_10.2.0.1-1.0_i386.deb
La instalación debería ejecutarse sin problemas, aunque si nos da problemas de dependencias, solo tendremos que ejecutar lo siguiente:

sudo apt-get -f install

Con este comando, forzamos la instalación de las dependencias de la última instalación que hayamos intentado realizar, además de completar la instalación que estaba a medias por problemas de dependencias.

Con esto, ya tenemos Oracle instalado, pero hay que configurarlo. Primero, vamos a iniciar el gestor de configuración de Oracle:

sudo /etc/init.d/oracle-xe configure

Nos mostrará el siguiente mensaje:


Aquí, configuramos el puerto utilizado por la aplicación Web, dejamos el por defecto (8080). A continuación, nos preguntará el puerto utilizado para que las aplicaciones se comuniquen con la base de datos:



Luego, nos pedirá una contraseña. Según la escribamos, no aparecerá, así que asegúrate de escribirla correctamente las 2 veces:



Una vez la pongamos, nos preguntará si deseamos que Oracle inicie automáticamente al inicio. Pulsamos la tecla "y", y le damos al Enter. Con esto, la configuración de Oracle habrá terminado. Solo falta un detalle para que podamos usarlo correctamente desde el terminal: añadir la ruta de Oracle al PATH.

Abrimos el archivo .bashrc por ejemplo con Gedit:

gedit ~/.bashrc
Y añadimos las siguientes líneas al final del archivo:
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_HOME
export ORACLE_SID=XE
export PATH

Guardamos y salimos (si estas en nano, CTRL+X, pulsa "s" y luego Enter). Reinicia el sistema, y ya deberías tener Oracle funcionando correctamente. Para probarlo:
sqlplus
El usuario es "system" y la contraseña, la que pusieras. Ya está Oracle totalmente instalado y configurado. Si solo vamos a utilizar esta cuenta, puede ser conveniente, por comodidad, crear un alias. Solo hay que abrir el archivo .bashrc :

nano ~/.bashrc
Al final del archivo, añade la siguiente línea, donde CONTRASEÑA es la contraseña que elegiste:

alias sqlplus='sqlplus system/CONTRASEÑA'

Además, si estas en el caso arriba mencionado (eres alumno de BD en 2º de Ingeniería Informática), quizás te interese tener las tablas de las prácticas en tu sistema. Para ello, descarga este archivo y ponlo en tu carpeta personal. Inicia SQLPlus:

sqlplus
Una vez dentro del programa y con el nuevo prompt, ejecuta lo siguiente:
@ordenes

El sistema se pondrá a trabajar, y una vez hayas recuperado el control, ya tendrás importadas las tablas usadas en prácticas. Con esto, solo falta ejecutar cualquier consulta para asegurarte de ello, por ejemplo:
 select * from proveedores;

Listo, ya tienes Oracle totalmente funcional y configurado.


Si en tu sistema falla, o algo no va bien, por favor, házmelo saber en los comentarios. Intentaré solucionarlo como pueda, ya que este programa puede ser importante para las prácticas de BD, o simplemente si lo necesitas por otro motivo.

24 comentarios :

  1. Iván Peñalba Solís8 de marzo de 2013, 21:00

    Basta la entrada chiquillo, cuando tenga tiempo para trastear en linux pruebo como me va

    ResponderEliminar
  2. Me alegra que te guste :) Si tienes cualquier duda o problema, házmelo saber ;)

    ResponderEliminar
  3. Un 10 Raúl. Me salvas de tener que soportar los ordenadores de la Uca ... jajajaja

    ResponderEliminar
  4. Me alegro!! :) Nada, para algo hay que hacer uno mismo las guías (al igual que Ramón). Si fuera por la UCA y sus profesores, no sabríamos como hacerlo.

    ResponderEliminar
  5. Como puedo hacer para que funcione sin el super admin "sudo su". Es necesario?. Muchas gracias, excelente aporte.

    ResponderEliminar
  6. Pues la verdad es que no he escuchado nunca hablar de ese programa... pero si quieres, cuando termine con los exámenes y tenga tiempo, lo miro :)

    ResponderEliminar
  7. ¿A qué te refieres con "que funcione sin el super admin"? Que yo tenga entendido, Oracle XE funciona perfectamente en todo sistema Linux sin que sea necesario ejecutarlo como root (lo que llamas "super admin"). Únicamente es necesario utilizar el usuario root para la instalación, como en todo sistema Linux. Sin acceso a ese usuario, no es posible instalar ni desinstalar nada en Linux. Pero como digo, para ejecutar Oracle (la orden sqlplus en concreto), no es necesario ser root. Cualquier usuario puede ejecutarlo. Dame más detalles y veré si puedo responderte :)

    ResponderEliminar
  8. Hola Raul ya he hecho todo hasta antes de hacer el alias del usuario system. Para conectarte con la base de datos por HTTP introduzco ip:8080 y no la localiza y lo hago desde ese ubuntu y me sale una pagina de derechos de autor y tal, adjunto pantallazo.
    Saludos.

    ResponderEliminar
  9. Vale, tendrás que bajar hasta abajo del todo en esa página y aceptar los términos de licencia. Una vez hecho eso, no debería darte problemas.

    ResponderEliminar
  10. No me aparece ningún aceptar terminos en la pagina del localhost.

    ResponderEliminar
  11. ¿Has probado a usar otro navegador? Yo lo hice en su día con Chrome y me funcionó perfectamente.


    Por cierto, hace ya tiempo que no uso Oracle (ya superé la asignatura por lo que lo instalé, y lo desinstalé), pero no recuerdo si el puerto utilizado para acceder vía web que yo usé era el de HTTP (8080 por defecto) o el otro puerto que te pide especificar, para la base de datos (el 1521 por defecto). Prueba a ver si con este segundo te funciona, y si no pues ya me dices. Suerte!

    ResponderEliminar
  12. Que va, lo tengo en maquina virtual hago una peticion http a su apache i me lo coge pero pongo el puerto 8080 y me dice que el servidor esta rechazando la conexion y el puerto 1521 no funciona y cuando lo hago desde esa maquina virtual me sale la pagina de la licencia (sin el boton de aceptar). Probado con navegador Midori (desde la maquina virtual) y tampoco. Paso zip con imgs.

    ResponderEliminar
  13. Ah vale, utilizas máquina virtual. Puede estar ahí el problema. Yo lo tuve también instalado en máquina virtual un tiempo, pero solo utilicé Oracle mediante consola porque según nos explicaron en clase, algún problema daba con el HTTP. Aún así nunca llegué a probarlo, pero sí puede ser lo que te está ocurriendo a tí. Por lo que yo sé, la máquina virtual de VirtualBox no suele reconocer bien lo relacionado con redes (tarjeta inalámbrica, uso de servidores y demás), por lo que puede ser ese el problema.
    Si no te queda otra que utilizar la interfaz web, creo que tendrás que instalarlo en la máquina huésped, la real. Espero que no tengas que recurrir a ello porque la verdad es que entre lo que ocupa Oracle y lo que necesita de swap, es un poco "coñazo". A ver que me cuentas, suerte!

    ResponderEliminar
  14. Hola Raul mira a mi me sale error en sudo me dice que es una operacion no permitida..

    Espero me puedas ayudar

    ResponderEliminar
  15. Buenas Daniela.

    Puede ser que tu sistema no tenga configurado tu usuario como un usuario sudo. ¿Qué sistema utilizas?

    Puede ser que tengas que añadir tu usuario al fichero de los usuarios que puedan utilizar sudo.

    Para ello, edita el fichero /etc/sudoers (nano /etc/sudoers ó gedit /etc/sudoers)... aunque claro, para ello tendrás que hacerlo como usuario root ("su" a secas en un terminal debería darte acceso, introduciendo la contraseña de administrador).

    Añade bajo la línea "root ALL=(ALL) ALL" lo siguiente:

    tuusuario ALL=(ALL) ALL


    Donde tuusuario es tu nombre de usuario en el sistema. Eso debería darte acceso a la orden sudo con tu usuario una vez reinicies el sistema.

    ResponderEliminar
  16. Estimado

    Yo tengo el mismo problema, Instale oracle-xe-universal
    sin ningún problema pero a la hora de realizar una petición por http me
    arroja el mismo pantallazo de Emilio, probé con 3 navegadores distintos y
    sigue saliendo la misma información, yo no utilice maquina virtual para
    la instalación, tengo instalado Ubuntu 13.10 en mi equipo y en ese
    sistema operativo lo instale, agradecería su ayuda.

    ResponderEliminar
  17. Pues poco más que a Emilio voy a poder ayudarte... si no utilizas máquina virtual, no debería darte ningún problema, aunque claro, yo esto lo probé en Ubuntu 12.04, no en 13.10, por lo que quizás no sea compatible. Aún así, yo no utilicé la interfaz http, sino que utilizábamos directamente los comandos de terminal, por lo que tampoco sé a qué puede ser debido a ciencia cierta. Espero que no tengas que cambiar de sistema, pero prueba si te es posible con ubuntu 12.04 en una partición aparte o en otro disco duro. Un saludo!

    ResponderEliminar
  18. oie me sale que hiuvieron errores al prosesar pero ago lo que me dise de -f isntall y dise qe tengo 879 paqetes no actualisados AYUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

    ResponderEliminar
  19. Pues no se me ocurre otra cosa que que debas actualizar tu sistema previamente (sudo apt-ge update && sudo apt-get upgrade). Hecho esto, dime si te sigue dando ese error. Un saludo!

    ResponderEliminar
  20. para evitar esto debes ingresar via http://127.0.0.1:8080/apex.
    Esto salta la pantalla de licencia y te lleva directo a la aplicacion

    ResponderEliminar
  21. Enrique Becerra Palacios27 de septiembre de 2014, 8:36

    oye disculpa yo estoy instalando la version 10g y ya me sale la paguina y todo pero o que quiero es ocuparlo por consola ya ise todo los pasos pero me sale un error

    Error 46 initializing SQL*Plus

    HTTP proxy setting has incorrect value

    SP2-1502: The HTTP proxy server specified by http_proxy is not accessible

    estoy con linux 14.04

    ResponderEliminar
  22. En principio, si has seguido la guía paso a paso, y sin cambiar los puertos HTTP y demás opciones de la configuración, debería funcionarte perfectamente. Aparte de eso, no sé si Oracle en su versión 10g funciona con Ubuntu 14.04 (que es el que entiendo que tienes)... al ser un kernel de Linux mucho más nuevo, puede ser que no sea compatible.


    De todas formas, al igual que digo al comienzo del post, te sugiero que pruebes a instalar una máquina virtual con Ubuntu 12.04, en el que se sabe que es 100% compatible, e instalar Oracle en esa máquina virtual. Para la máquina virtual, puedes echar un vistazo en el blog, buscando "virtual box" ;)

    ResponderEliminar
  23. Hola, una pregunta, cómo desinstalo el oracle de mi ordenador?.
    Muchas gracias, buena información.

    ResponderEliminar
  24. Buenas! Pues la verdad es que ya no recuerdo mucho de Oracle, pues no lo uso. Además ahora no utilizo Ubuntu. Pero diría que puedes hacerlo con:

    sudo apt-get purge --remove oracle-xe

    ResponderEliminar