¿Cuál es exactamente el trato con los identificadores de conexión de Oracle separados por un período?

StackOverflow https://stackoverflow.com/questions/241361

  •  04-07-2019
  •  | 
  •  

Pregunta

Me he estado preguntando esto por un tiempo, pero como no ha aparecido mucho, lo he dejado en la columna "misterioso y mágico".

Me parece que hay algún tipo de relación entre un identificador de conexión como ABC y ABC.DEFG y no entiendo lo que es.

Por ejemplo, una máquina que estaba configurando justo ahora estaba teniendo problemas con el uso del identfier ED2, aunque en mi archivo tnsnames tenía claramente

EDC2 = (....)

Esto fue copiado y pegado desde otra computadora que funcionó bien. Sin embargo, hacer tnsping EDC2 no se resolvería hasta que lo cambié para decir

EDC2.WORLD = (...)

en el que el punto de resolución a EDC2 comenzó a funcionar. ¿Qué está pasando aquí?

¿Fue útil?

Solución

El alias TNS en el archivo tnsnames.ora interactúa con el parámetro

NAMES.DEFAULT_DOMAIN

en el archivo sqlnet.ora. Si NAMES.DEFAULT_DOMAIN se configura en WORLD, por ejemplo, cuando intenta conectarse a un alias sin dominio, el archivo sqlnet.ora le dice a Oracle que agregue automáticamente el dominio antes de realizar la búsqueda en el archivo tnsnames.ora Si intenta conectarse a un alias con un dominio, se ignora NAMES.DEFAULT_DOMAIN .

Mi preferencia / sugerencia general es establecer NAMES.DEFAULT_DOMAIN en WORLD en sqlnet.ora y especificar EDC2.WORLD en el archivo tnsnames.ora. De esa manera, tanto el identificador de conexión EDC2 como el EDC2.WORLD funcionarán: el primero cambia a este último debido al parámetro DEFAULT_DOMAIN .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top