Conexión remota Oracle XE


Objetivo

Conectarnos a una base de datos Oracle XE o Oracle BD Edición full, que se encuentra en otra máquina. Para ello, usaremos el SQL Command Line de Oracle; desde luego con esta configuración podemos acceder con cualquier programa de administración de Oracle o una aplicación creada por nosotros mismos.

Entorno

Tenemos 2 máquinas conectadas en red, la máquina A que será el Cliente y en la cual tenemos el SQL Command Line, y la maquina B, que será el Servidor, el cual recibirá las peticiones del cliente a través del Listener Service de Oracle y el cual dará las respectivas respuestas.

Procedimiento

Paso 1

Debemos habilitar en el Cliente, la configuración de conexión al Servidor, para ello, vamos a cambiar registros en 2 archivos (listener.ora y tnsnames.ora) de configuración de Oracle.

La ruta de estos archivos es:
C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN

Los nombres de las carpetas van a variar de acuerdo a la versión que tenemos instalada, pero la ruta es prácticamente la misma.

Paso 2: Edición de listener.ora

El primer archivo que debemos editar es listener.ora. Allí debemos cambiar el parámetro de HOST por la IP o el nombre del equipo del Servidor.

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

En este caso, localhost lo reemplazamos por la dirección IP del Servidor, al cual nos vamos a conectar y el puerto que está usando, por defecto para Oracle, el puerto es 1521. Por ejemplo:

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.2)(PORT = 1521))

También debemos asegurarnos que el servicio Listener por defecto, al cual nos conectaremos esté bien configurado, si el Servidor tiene la versión Express Edition de Oracle, la siguiente linea queda igual

DEFAULT_SERVICE_LISTENER = (XE)

Pero si  el Servidor tiene instalada la versión Full, debemos cambiar el nombre del Servicio, por ejemplo:

DEFAULT_SERVICE_LISTENER = (ORCL)

Donde ORCL es el nombre del Servicio de la Base de Datos del Servidor.

Paso 3: Edición de tnsnames.ora

También debemos modificar el archivo tnsnames.ora, el cual encontramos en el mismo directorio. Allí cambiamos el nombre del parámetro principal XE =, la IP del Servidor(HOST = locahost) y el nombre del servicio (SERVICE_NAME = XE).

Si el servidor tiene instalada la version XE, dejamos todo igual y solo cambiamos el HOST

XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.2)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

Ahora bien, si el Servidor es una Base de Datos Oracle Full, debemos poner en los campos anteriormente nombrados, el nombre del Servicio, en este ejemplo el servicio se llama ORCL

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.2)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCL)
    )
  )

Paso 4 

Reiniciamos el servicio, OracleServiceXE

Paso 5: Probando la conexión

Ahora vamos a probar que estamos conectados al Servidor, para ello abrimos SQL Command Line de Oracle e ingresamos el comando para la conexión.

SQL> CONNECT USUARIO/PASSWORD@XE

Donde @XE es el nombre del servicio para las versiones express, pero si estamos accediendo a una BD con versión full, debemos poner, como hemos dicho antes, el nombre del servicio, en el ejemplo sería:

SQL> CONNECT USUARIO/PASSWORD@ORCL

Si todo lo que hicimos está correcto, nos debe aparecer   Connected.

De esta forma comprobamos que estamos conectados a nuestro servidor de Base de Datos y ya podemos trabajar con él segun nuestras necesidades.

Un saludo

NOTAS

Si no se tienen permisos de administración para editar los 2 archivos.
Vamos a cada archivo, Click derecho > Propiedades > Seguridad > Editar > Permitir Control Total



Anderson Rubio

Phasellus facilisis convallis metus, ut imperdiet augue auctor nec. Duis at velit id augue lobortis porta. Sed varius, enim accumsan aliquam tincidunt, tortor urna vulputate quam, eget finibus urna est in augue.