IDE PL-SQl Developer - как настроить подключение

TopolM

Всем доброго времени суток. Решил поюзать PL-SQL Developer, но что-то не могу настроить соединение. (Через SQL Developer & MS Vicusal Studion коннетктит нормально).Listener.ora - сервер
# listener.ora Network Configuration File: C:\app\SlashBuster\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
 
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\app\SlashBuster\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\app\SlashBuster\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\app\SlashBuster\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\app\SlashBuster\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )
 
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = SlashBusterPC)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )
 
ADR_BASE_LISTENER = C:\app\SlashBuster
tnsnames.ora -сервер
# tnsnames.ora Network Configuration File: C:\app\SlashBuster\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
 
stream =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = SlashBusterPC)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = stream)
      (SERVICE_NAME = orcl)
    )
  )
SERVICE_NAME-это как я понимаю SID? SERVER-что я здесь указал имя схемы.( но мне кажется это не то) И ещё вопрос что вводить в окне PL-SQL Devloper поле Database?
4 ответа

TopolM

SERVICE_NAME-это как я понимаю SID?
Это немного разные вещи, но очень часто их значения совпадают.


TopolM

Посмотрел SID и Service совпадают=orcl. Мб заполнить tnsnames по-другому нужно? В интернете что то очень много вариаций... мб кто поделится своим?


TopolM

Запсь из tnsnames создаваемая при установке
XE = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = G-NoteBook)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE) ) )
В ..\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN\sample также есть пример полного синтаксиса.
SERVICE_NAME-это как я понимаю SID?
SID это уникальное имя конкретного экземпляра, service name может быть именем как для одного сервера так и для некоторого кластера серверов.


TopolM

И ещё вопрос что вводить в окне PL-SQL Devloper поле Database?
Алиас из tnsnames.ora
stream =     -- в данном случае stream - это алиас
  (DESCRIPTION
SERVER-что я здесь указал имя схемы
Здесь должно быть не конкретное имя, а одно из двух значений: DEDICATED или SHARED. Первое используется значительно чаще, так что тебе нужно оно.
SERVICE_NAME-это как я понимаю SID?
Про SID тебе уже сказали. SERVICE_NAME введено для большей гибкости. Скажем, один экземпляр может иметь несколько SERVICE_NAME и разные пользователи могут коннектиться к разным (в зависимости от того имени, которое указано в tnsnames.ora данного пользователя). Это может использоваться, например, для балансировки нагрузки, или одно имя для привилегированных пользователей, другое для остальных ну и т.д. Возможные SERVICE_NAME задаются в параметрах экземпляра (параметр называется service_names - множественное число, поскольку их м.б. несколько).А вообще в поставку сервера входит Net Manager, который позволяет создавать файлы сетевой настройки (в том числе listener.ora, tnsnames.ora), даже если человек не знает их формата.