Usar Oracle-XE en Ubuntu sin conexiones de Red
Por fin en la Universidad un materia que no tiene que ver con Miscrosoft. A llegado el momento de aprender Oracle.
El problema que tenia es que solo me realizaba conexión a Oracle cuando estaba conectado a alguna red, ya fuera wifi o ethernet, pero si no tenia acceso a alguna de ellas el listener no era capaz de hacer conexión. Por ejemplo tratando de conectarme con SQL Developer me sacaba el error:
La solucion es tan simple como increible, pues pase por varios foros de Ubuntu y Oracle y no encontré cuál era la causa del problema de forma concreta. Así que atando cabos encontré esta solución (y aparte aprendí mas de lo que esperaba).
Los pasos los ejecutare a través de una terminal.
1. Saber el nombre de la maquina:
El valor que se encuentre alli adentro se debe copiar (pues es importante para el siguiente paso). En mi caso se llama NaNo
2. Para saber si debes realizar esta configuración, solo hace falta que hagas un ping a tu propia maquina y si no hay resultados es porque no esta configurada como uno de los hosts.
2. Abrir el archivo de los host de la maquina:
Este es el archivo que tengo actualmente:
Se le debe adicionar la misma maquina como Host:
Guardar y cerrar el archivo. Luego se debe repetir el punto 2 y validar que retorne resultados.
Ahora es importante verificar los servicios y usar algunos comandos para reinicar Oracle. La mejor forma de saber si tenemos conexion con el Listener es ejecutar el comando:
Para garantizar que los servicios quedan inicados debe aparecer esta parte en el mesaje:
Como ya configuramos nuestro equipo como un Host bastaría con reiniciar el servicio de Oracle con el comando:
Después de esto ya podemos conectarnos a Oracle sin problemas. Ya sea por Apex o por SQL Developer.
Otro comandos importantes en Oracle y es buenor tenerlos a la mano son:
Otros problemas que se pueden presentar pueden ser directamente con la configuración de los archivos de escucha, los cuales se pueden editar con los comandos:
Donde la opción
Enlaces importantes:
- Como instalar Oracle-XE en Ubuntu
- Reconfigurar Oracle
- SQL Developer
Sueter de haber encontrado una solución.
Por: Camilo Martinez [€quiman]
El problema que tenia es que solo me realizaba conexión a Oracle cuando estaba conectado a alguna red, ya fuera wifi o ethernet, pero si no tenia acceso a alguna de ellas el listener no era capaz de hacer conexión. Por ejemplo tratando de conectarme con SQL Developer me sacaba el error:
TNS-12505: TNS:listener does not currently know of SID given in connect descripton
La solucion es tan simple como increible, pues pase por varios foros de Ubuntu y Oracle y no encontré cuál era la causa del problema de forma concreta. Así que atando cabos encontré esta solución (y aparte aprendí mas de lo que esperaba).
Los pasos los ejecutare a través de una terminal.
1. Saber el nombre de la maquina:
sudo gedit /etc/hostname
El valor que se encuentre alli adentro se debe copiar (pues es importante para el siguiente paso). En mi caso se llama NaNo
2. Para saber si debes realizar esta configuración, solo hace falta que hagas un ping a tu propia maquina y si no hay resultados es porque no esta configurada como uno de los hosts.
ping NaNo
2. Abrir el archivo de los host de la maquina:
sudo gedit /etc/hosts
Este es el archivo que tengo actualmente:
192.xxx.xxx.xxx NaNo # Added by NetworkManager
127.0.0.1 localhost.localdomain localhost
::1 NaNo localhost6.localdomain6 localhost6
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Se le debe adicionar la misma maquina como Host:
192.xxx.xxx.xxx NaNo # Added by NetworkManager
127.0.0.1 localhost.localdomain localhost
::1 NaNo localhost6.localdomain6 localhost6
127.0.0.1 NaNo
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Guardar y cerrar el archivo. Luego se debe repetir el punto 2 y validar que retorne resultados.
Ahora es importante verificar los servicios y usar algunos comandos para reinicar Oracle. La mejor forma de saber si tenemos conexion con el Listener es ejecutar el comando:
sudo /etc/init.d/oracle-xe status
Para garantizar que los servicios quedan inicados debe aparecer esta parte en el mesaje:
Service "XE" has 1 instance(s).
Instance "XE", status READY, has 1 handler(s) for this service...
Service "XEXDB" has 1 instance(s).
Instance "XE", status READY, has 1 handler(s) for this service...
Service "XE_XPTsudo /etc/init.d/oracle-xe restart has 1 instance(s).
Instance "XE", status READY, has 1 handler(s) for this service...
The command completed successfully
Como ya configuramos nuestro equipo como un Host bastaría con reiniciar el servicio de Oracle con el comando:
sudo /etc/init.d/oracle-xe restart
Después de esto ya podemos conectarnos a Oracle sin problemas. Ya sea por Apex o por SQL Developer.
Otro comandos importantes en Oracle y es buenor tenerlos a la mano son:
sudo /etc/init.d/oracle-xe start
sudo /etc/init.d/oracle-xe stop
sudo /etc/init.d/oracle-xe start
sudo /etc/init.d/oracle-xe restart
sudo /etc/init.d/oracle-xe force-reload
sudo /etc/init.d/oracle-xe enable
Otros problemas que se pueden presentar pueden ser directamente con la configuración de los archivos de escucha, los cuales se pueden editar con los comandos:
sudo gedit /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/tnsnames.ora
sudo gedit /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/listener.ora
Donde la opción
HOST = NaNo
debe tener configurado el nombre del equipo (explicado al inicio de esta publicación).Enlaces importantes:
- Como instalar Oracle-XE en Ubuntu
- Reconfigurar Oracle
- SQL Developer
Sueter de haber encontrado una solución.
Por: Camilo Martinez [€quiman]
Muchas gracias.
ResponderEliminarHace casi un año usé Oracle 10g para un proyecto en la universidad, y también me intrigaba saber si era posible conectarse a la base de datos sin tener activa una conexión de red. Investigué un poco pero no lo logré, y como no era imprescindible pues no busqué más.
Ahora he vuelto a trabajar con Oracle y necesitaba acceder a la base de datos sin conexión de red. Gracias por haber publicado la solución que encontraste.
Un saludo!!
Jesús
Feedback:
ResponderEliminarMala suerte... probé tu solución pero sigue sin funcionar si no activo una conexión de red.
Tendré que seguir investigando.
Uso Ubuntu 10.04 y Oracle 10g (10.2). Probaré con Oracle 11g pero no creo que sea problema de la versión, es de alguna configuración en Ubuntu seguro.
Saludos!
Buscando un poco más encontré la solución que me funcionó. Lo he probado tanto en Unbuntu 9.10 como en el 10.04:
ResponderEliminarhttp://aigloss.blogspot.com/2011/06/oracle-database-not-working-without.html
Espero que le pueda ayudar a alguien más.
Saludos!
Que bien... gracias por publicar tu solucion!
ResponderEliminar