Использовать tnsnames.ora в Oracle SQL Developer
Я оцениваю Oracle SQL Developer.
My tnsnames.ora
заполняется, а tnsping
для соединения, определенного в tnsnames.ora
, отлично работает. Тем не менее SQL Developer не показывает никаких подключений.
Oracle SQL Developer Soars упоминает, что если
у вас есть клиентское программное обеспечение Oracle и файл tnsnames.ora, уже установленный на вашем компьютере, Oracle SQL Developer автоматически заполнит навигатор соединений из сетевых имен служб, определенных в tnsnames.ora.
Я также попытался установить переменную среды TNS_ADMIN
, но после перезапуска SQL Developer все еще не отображаются соединения.
Любые идеи?
Кто-нибудь успешно работает с SQL Developer и tnsnames.ora?
Ответы
Ответ 1
- В SQLDeveloper просмотрите
Tools --> Preferences
, как показано на рисунке ниже.
![SQLDeveloper access preferences]()
- В параметрах Настройки
expand Database --> select Advanced --> under "Tnsnames Directory" --> Browse the directory
, где присутствует tnsnames.ora.
- Затем нажмите ОК,
как показано ниже.
tnsnames.ora доступен Drive:\oracle\product\10x.x.x\client_x\NETWORK\ADMIN
![SQLDeveloper update tnsnames directory]()
Теперь вы можете подключиться с помощью опций TNSnames.
Ответ 2
Этот отличный ответ к аналогичному вопросу (который я не мог найти раньше, к сожалению) помог мне решить проблему.
Копирование содержимого из ответного ответа:
SQL Developer будет выглядеть в следующем расположении в этом порядке для файла tnsnames.ora
$HOME/.tnsnames.ora
$ TNS_ADMIN/tnsnames.ora
Поиск ключевого слова TNS_ADMIN в реестре
/etc/tnsnames.ora(не-окна)
$ ORACLE_HOME/сети/администратор/tnsnames.ora
LocalMachine\SOFTWARE\ORACLE\ORACLE_HOME_KEY
LocalMachine\SOFTWARE\ORACLE\ORACLE_HOME
Если ваш файл tnsnames.ora не распознается, используйте следующую процедуру:
Определите переменную среды, называемую TNS_ADMIN, чтобы указать на папку, содержащую ваш файл tnsnames.ora.
В Windows это делается путем перехода на Панель управления > Системa > Расширенные настройки системы > Переменные среды...
В Linux определите переменную TNS_ADMIN в файле .profile в домашнем каталоге.
Подтвердить, что os распознает эту переменную окружения
В командной строке Windows: echo% TNS_ADMIN%
Из linux: echo $TNS_ADMIN
Перезапустить SQL Developer Теперь в SQL Developer щелкните правой кнопкой мыши "Подключения" и выберите "Новое подключение". Выберите "TNS" в качестве типа подключения в раскрывающемся списке. Теперь ваши записи из tnsnames.ora должны отображаться здесь.
Ответ 3
У меня была та же проблема, tnsnames.ora
работал отлично для всех других инструментов, но SQL Developer не использовал его. Я попробовал все предложения в Интернете, которые я мог найти, включая решения по ссылке, приведенной здесь.
Ничего не получилось.
Оказывается, что база данных кэшировала резервные копии tnsnames.ora
как tnsnames.ora.bk2
, tnsnames09042811AM4501.bak
, tnsnames.ora.bk
и т.д. Эти файлы не были прочитаны средним пользователем.
Я подозреваю, что sqldeveloper соответствует шаблону для имени, и он пытался прочитать одну из этих резервных копий и не мог. Поэтому он просто изящно выходит из строя и ничего не показывает в раскрывающемся списке.
Решение состоит в том, чтобы сделать все файлы доступными для чтения или удалить или переместить резервные копии из каталога администратора.
Ответ 4
Это помогло мне:
Опубликовано: 8/12/2011 4:54
Установить каталог tnsnames
tools- > Preferences- > Database- > advanced- > Tnsnames Directory
https://forums.oracle.com/forums/thread.jspa?messageID=10020012�