Что именно происходит с идентификаторами соединений оракула, разделенными точкой - PullRequest
4 голосов
/ 27 октября 2008

Мне было интересно это некоторое время, но, так как он не очень подходил, я оставил его в столбце «таинственный волшебник».

Мне кажется, что существует какая-то связь между идентификатором соединения, таким как ABC и ABC.DEFG, и я не совсем понимаю, что это такое.

Например, на машине, которую я настраивал только сейчас, у меня были проблемы с использованием идентификатора ED2, хотя в моем файле tnsnames у меня явно было

EDC2 = (....)

Это было скопировано и вставлено с другого компьютера, который работал очень хорошо. Тем не менее, выполнение tnsping EDC2 не будет разрешено, пока я не изменил его, чтобы сказать

EDC2.WORLD = (...)

с этого момента разрешение на EDC2 начало работать. Что здесь происходит?

1 Ответ

7 голосов
/ 28 октября 2008

Псевдоним TNS в файле tnsnames.ora взаимодействует с параметром

NAMES.DEFAULT_DOMAIN

в файле sqlnet.ora. Например, если для NAMES.DEFAULT_DOMAIN задано значение WORLD, то при попытке подключиться к псевдониму без домена файл sqlnet.ora указывает Oracle автоматически добавить домен перед выполнением поиска в файле tnsnames.ora. Если вы попытаетесь подключиться к псевдониму с доменом, NAMES.DEFAULT_DOMAIN игнорируется.

Мое общее предпочтение / предложение - установить NAMES.DEFAULT_DOMAIN на WORLD в sqlnet.ora и указать EDC2.WORLD в файле tnsnames.ora. Таким образом, оба идентификатора подключения EDC2 и EDC2.WORLD будут работать - первый будет заменен на второй из-за параметра DEFAULT_DOMAIN.

...