Transcripción Conexiones remotas en Oracle DBA: configuración básica
Recordemos que al final las conexiones se establecen mediante una arquitectura similar a la que se muestra en la imagen.
Tenemos un cliente que se conecta a una base de datos. Esta base de datos ofrece un nombre de servicio a la que conectarse, ese nombre de servicio se guarda dentro del listener, y el cliente se va a poder conectar a través de la configuración de máquina-puerto-servicioal que quiera acceder entonces, para esto se auxilia de un fichero local que tiene definida esa conexión, como el fichero tnsnames.ora.
Aunque generalmente el fichero tnsnames suele ser el más habitual en la mayor parte de las arquitecturas, en realidad hay más posibilidades. Estas alternativas o posibilidades constituyen otros modos de conexión. Básicamente existen cuatro modos de conexión:
- EASY CONNECT: Este modo de conex cual nos permite conectarnos directamente con una cadena TCP IP. Es decir, la propia URL de la conexión.
- LOCAL NAMING: Este permite conectarnos usando un fichero de configuración local, que sería el tnsnames.
- DIRECTORY NAMING: Utiliza un LDAP o un método similar, pero desde el propio SQL Net.
- EXTERNAL NAMING: Utiliza servicios de nombres de terceros.
En realidad, los dos últimos son muy parecidos, El único cambio es la el iniciador de la petición.
EASY CONNECT.
Este método está limitado solo a al protocolo TCP y no ofrece características de balanceo de carga, o tolerancia a fallos de tiempo de conexión sobre diferentes rutas de red. Easy Connect está habilitado por defecto. La cadena de conexión para este mecanismo es:
- SQL connect usuario/contraseña@máquina:puerto/base_de_datos
Donde el proceso de usuario va a utilizar protocolo TCP, para conectarse al puerto indicado, de la dirección IP del host. Si es que existe un listenerejecutándose en ese host, el listenerllamará a un proceso de servidor para la instancia que es parte del servicio de la base de datos en cuestión.
Si se omite el puerto y el servicio quiere decir que el listener está usando el puerto 1521(que es el puerto por defecto), y el nombre de servicio registrado con el listener es el mismo que el nombre del host.
LOCAL NAMING.
Este método soporta todos los protocolos de red y todas las características avanzadas de Oracle Net. Con este método el usuario provee un alias en la cadena de conexión. Este alias será resuelto en información completa de red por un archivo local, que sería el famoso archivo TNSNAMES.ORA localizado en la carpeta Un punto en contra de este método es que el DBA debe mantener manualmente los archivos TNSNAMES.ORA en todos los clientes. La cadena de conexión para este mecanismo es: Este método utiliza un servidor de directorio LDAP para resolver los alias. Para utilizar este método es necesario primero instalar y configurar un servidor de Directorio dentro de la red. Este servidor puede ser Active Directory de Windows u Oracle Internet Directory del Oracle Application Server. Al igual que Local Naming, Directory Naming soporta todas las características de Oracle Net con la diferencia que ofrece un repositorio central para todos los detalles de resolución de nombres. Este método es ideal para organizaciones donde exista un gran número de usuarios, con muchas bases de datos en distintos servidores; es decir un ambiente bastante dinámico y en constante cambio. La cadena de conexión para este mecanismo igual a la del LOCAL NAMING. Este método es conceptualmente igual a Directory Naming con la diferencia que este utiliza servicios de nombres de terceros, como Network Information Services de Sun Microsystems o Cell Directory Services que es parte de DCE. Ejemplo de conexión con EASY CONNECT. Para finalizar vamos a mostrarles un ejemplo. Vamos a intentar establecer la conexión mediante los modos vistos anteriormente. En este caso vamos a utilizar el EASY CONNECT. Entonces escribiriamos: Sqlplus sys/Pentium@localhost:1521/orcl1. Donde ¨Sys¨ sería el usuario, ¨Pentium¨ es la contraseña. Luego vendria el host o la máquina a la que nos vamos a conectar, que este caso, como es a la misma máquina sería ¨ localhost¨. Seguido tenemos el puerto 1521. Y finalmente tenemos ¨orcl1¨, que sería el nombre del servicio de la base de datos, Procedemos a ejecutar la línea. Vemos entonces que nos indica que no ha detectado ningún listener, en este caso no tenemos ningún listener funcionando, pero esta sería la forma para conectarnos a través del modo de conexión ¨easy connect¨.
DIRECTORY NAMING.
EXTERNAL NAMING.
conexiones remotas