与句点分隔的oracle连接标识符的确切处理方式

时间:2008-10-27 20:58:41

标签: oracle configuration tnsnames

我一直想知道这一段时间,但由于它没有出现太多我把它留在'神秘的巫术'专栏中。

在我看来,像ABC和ABC.DEFG之类的连接标识符之间存在某种关系,而我却不知道它是什么。

例如,我刚刚设置的机器我在使用identfier ED2时遇到问题,即使在我的tnsnames文件中我显然已经

EDC2 = (....)

这是从另一台运行良好的计算机上复制并粘贴的。然而,在我将其更改为

之前,无法解决EDC2问题
EDC2.WORLD = (...)

此时解析到EDC2开始工作。这是怎么回事?

1 个答案:

答案 0 :(得分:7)

tnsnames.ora文件中的TNS别名与参数

交互
NAMES.DEFAULT_DOMAIN

在sqlnet.ora文件中。例如,如果NAMES.DEFAULT_DOMAIN设置为WORLD,那么当您尝试连接到没有域的别名时,sqlnet.ora文件会告诉Oracle在tnsnames.ora文件中执行查找之前自动附加域。如果您尝试使用域连接到别名,则会忽略NAMES.DEFAULT_DOMAIN

我的一般偏好/建议是在sqlnet.ora中将NAMES.DEFAULT_DOMAIN设置为WORLD,并在tnsnames.ora文件中指定EDC2.WORLD。这样,连接标识符EDC2和EDC2.WORLD都可以工作 - 由于DEFAULT_DOMAIN参数,前者变为后者。